我有以下模式和分组应用程序,我在一个重构。以下内容将放在xml文件中并读入正则表达式引擎:
regexpattern="http://cars.mysite.com(.*)" application="http://www.mysite.com$1"
regexpattern="http://ww.mysite.com(.*)" application="http://www.mysite.com$1
regexpattern="http://(bikes\.|new\.|)mysite.com/(.*)" application="http://www.mysite.com/$2"
加入到这个:
regexpattern="http://(cars\.|ww\.|bikes\.|new\.|)mysite.com(|/)(.*)" application="http://www.mysite.com/$3"
这是我能做的最好的,可以做得更好吗?我是新来的。感谢。
答案 0 :(得分:2)
1。你有一个反斜杠:
http://(cars\.|ww\.|bikes\.|new\.|)mysite\.com(|/)(.*) ^
2。您可以使用(|/)
代替/?
:
http://(cars\.|ww\.|bikes\.|new\.|)mysite\.com/?(.*) ^^
3。使斜杠可选意味着它接受mysite.com.co.uk
之类的东西,这可能不是你想要的。
4。另一个小改动是只写一次\.
:
http://((cars|ww|bikes|new)\.)?mysite\.com/?(.*) ^^
答案 1 :(得分:0)
完整的正则表达式重构如下所示:
http://((?:(?:car|bike)s|(?:w|ne)w)\.)?mysite\.com/?.*