我试图在我的.htaccess文件中使用PCRE正则表达式匹配一些URL模式。这是我现在的正则表达式:
investor-advice/glossary/(?:[a-z]|all)(/P[0-9]+)?
我想将[a-z]
个字符限制为一个字符,我尝试过很多方法让这项工作失败。
唯一可行的方法就是在[a-z]
之后关闭字符串,如下所示:
investor-advice/glossary/(?:[a-z]$|all)(/P[0-9]+)?
但是,此时关闭字符串意味着我无法匹配后面的(/P[0-9]+)
段。还有另一种方法可以达到这个目的吗?
我也试过[a-z]{1}
无济于事。
答案 0 :(得分:0)
您可以使用
investor-advice/glossary/(?:all|[a-z])(/P[0-9]+)?$
主要观点是字符串锚点$
的末尾移动到模式的末尾,只允许investor-advice/glossary/all
,investor-advice/glossary/all/P12
,investor-advice/glossary/d
或{ {1}}。