例如:
url = "http://abc.xyz.com/name=test&account=google&search=google"
目前我正在使用正则表达式替换DNS名称 “^((?: HTTP:(:????\ / \ /)))[^ \ /] *”;
它运行正常,但它正在用其他字符串替换“http://abc.xyz.com/”,但我只想替换域名,只有ptotocal信息应该是原样
即。 abc.xyz.com,其他字符串不是http://
例如:
String re =“/^(?:( ?!https?:\ / / /|。/)。)+ / gm”; String str =“http://abc.xyz.com/name=test&account=google&search=google”;
String subst = "www.xyz.com";
System.out.println(str.replace(re, subst));
实际:“http://abc.xyz.com/name=test&account=google&search=google” 预期:“http://www.google.com/name=test&account=google&search=google”
o / p无法正常工作
任何人都可以帮助我吗?
答案 0 :(得分:1)
^(?:(?!https?:\/\/|\/).)+
你可以试试这个。www.xyz.com
。见。演示。
http://regex101.com/r/sU3fA2/49
var re = /^(?:(?!https?:\/\/|\/).)+/gm;
var str = 'abc.xyz.com/name=test&account=google&search=google"\nhttp://abc.xyz.com/name=test&account=google&search=google"\nhttps://abc.xyz.com/name=test&account=google&search=google"\ntextile.trails.com/…{crea}&secure_id=[SECURE_ID]&position={heigherposition}&search_device={network}&device={device}&match_type={matchtype}';
var subst = 'www.xyz.com';
var result = str.replace(re, subst);
答案 1 :(得分:0)
尝试使用:
搜索:(https?://)?\w+(.*)
并替换为:$1www$2