我想在带有可选和必需部分的uri字符串上进行preg_match,但我无法理解。
要匹配的示例:
/segment/(required)/segment(/optional)
我希望下面的两个字符串与上面的
匹配/segment/required/segment/optional
和
/segment/reguired/segment
我知道我的政策是不为我写信,但我想不出来,所以以为我至少会问。
答案 0 :(得分:24)
问号使正则表达式中的前一个标记可选。例如:colou?r
匹配colour
和color
。
您可以使用圆括号将它们组合在一起,并在结束括号后面放置问号,从而使多个标记可选。例如:Nov(ember)?
将匹配Nov
和November
。
您可以通过包含多个问号来编写与许多替代方案匹配的正则表达式。 Feb(ruary)?
23(rd)?
匹配February 23rd
,February 23
,Feb 23rd
和Feb 23
。