[英]PHP regex url matching
我有一些例子:
mysite.com/tag/HD+Wallpaper //match
mysite.com/tag/HD+Wallpaper/ //match
mysite.com/tag/HD+Wallpaper?page= //match
mysite.com/tag/HD+Wallpaper/?page= //match
mysite.com/tag/HD+Wallpaper/sdadasdas //not match
与“高清+壁纸”是一个参数
我尝试:
^tag/(.+?)(|\/|\?(.*?))$i
我该如何解决? 泰
你可能会使用
tag/[^/\s]+(?:/(?:\?.*)?)?$
解释
tag/
从字面上匹配(也许/tag/
或\btag
会更具体)[^/\s]+
匹配除/
或空白字符之外的任何字符的 1+ 次出现(?:
非捕获组
/(?:\?.*)?
匹配/
后跟一个可选部分来匹配?
和字符串的 rest)?
关闭组并使其可选$
字符串结尾
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.