我需要检查正则表达式,尤其是:
/it/categoria/diritti-e-ugualianza
/it/categoria/diritti-e-ugualianza/
/it/categoria/diritti-e-ugualianza?i=1
/it/categoria/diritti-e-ugualianza/?i=1
必须按照唯一规则进行检查
我尝试这个
/it/categoria/diritti-e-ugualianza(?:/(.*))?$
但仅适用于
/ it / categoria / diritti-e-ugualianza
/ it / categoria / diritti-e-ugualianza /
是否存在一种忽略参数的方法?
谢谢
最佳答案
您可以将/
替换为与[/?]
或?
匹配的字符类/
:
/it/categoria/diritti-e-ugualianza(?:[?/](.*))?$
^^^^
请参见regex demo。
细节
/it/categoria/diritti-e-ugualianza
-文字子字符串(?:[?/](.*))?
-匹配1或0次出现的可选组[?/]
-一个?
或/
(.*)
-捕获组1:到行尾的任何0+字符$
-字符串结尾。关于regex - 正则表达式检查url是否带有斜杠和参数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51196167/