我想要一个与以下两个示例匹配的正则表达式:
http://testsite.com/1234/MyPage
http://testsite.com/MyPage
但是,以下示例不匹配:
http://testsite.com/
http://testsite.com/anything/MyPage
谢谢!
答案 0 :(得分:2)
您可以使用以下正则表达式:
^http:\/\/testsite\.com(?:\/1234)?\/MyPage$
这是一个实例:https://regex101.com/r/eu6HdA/4
如果要获得允许的子页面列表,可以使用以下正则表达式:
^http:\/\/testsite\.com(?:\/(?:1234|4567|7890))?\/MyPage$
实例:https://regex101.com/r/eu6HdA/5
<强>解释强>
^
字符串的开头http:\/\/testsite\.com
使用\
转义是必需的特殊正则表达式字符(?:\/1234)?
匹配可选不匹配的/1234
(?:\/(?:1234|4567|7890))?
匹配可选不匹配的群组与/
以及以下1234
,4567
或{{1}之一} 7890
字符串结尾