这里使用Regex Hero输入:
正则表达式:/category/*
替换字符串:/experiment/$0
目标字符串:http://google.co.in/blah_blah_blah/domainname.com/category/wp/
最终字符串:http://google.co.in/blah_blah_blah/domainname.com/experiment//category/wp/
http://google.co.in/blah_blah_blah/domainname.com/experiment/wp/
如何获得预期的网址,我的正则表达式中有什么问题?
答案 0 :(得分:1)
试试正则表达式:
/category/(.*)
在正则表达式.
中是通配符,*
是“0或更多”限定符。因此,正斜杠后匹配0个或更多(*
)个字符(.
)应表示为.*
替换:
/experiment/$1
$ 0是一个“伪组”,它保存整个匹配,即“/ category / ...”。您需要使用括号来定义其他组,以便您可以在替换模式中引用这些组,因此正则表达式中的(.*)
部分。
答案 1 :(得分:1)
您需要更改正则表达式:
/category/([^/]+)
这将匹配下一个斜线的所有内容。请注意,我还将它括在括号中capture
。或者,如果您在/category/
使用后只想要一切:
/category/(.*)
然后您需要将替换人员更改为:
/experiment/$1
$1
是第一场比赛。
这导致:
http://google.co.in/blah_blah_blah/domainname.com/experiment/wp/