我想匹配以下内容:
包含任何字符的任何字符串,除了/或。这是使用([^/\.]+)
完成的,但是,我还想添加一个字符串“faq”以匹配任何字符,除非它是一个“faq”字符串,例如:
目前,我的正则表达方式:
^([^/\.]+)/([^/\.]+)/$
然而,它也捕获了“常见问题”。
faq/fsdfsd/ => No match
faqgff/fdsfs/ => Match
jhpo/ijkd/ => Match
f/iout/ => Match
a/iout/ => Match
q/iout/ => Match
我尝试过跑步([^ /。] +)
是的,它适用于.htaccess重定向:)
答案 0 :(得分:2)
这将是一个消极的样子
(?!.*faq)
当它找不到模式“faq”时,它是真的
所以将它包含在你的正则表达式中
^(?!.*faq)([^/\.]+)/([^/\.]+)/$
然后它将匹配您的模式,但如果字符串包含“faq”则会失败。 (希望我理解正确)
答案 1 :(得分:0)
我不能说我完全理解你的问题陈述:
想要添加字符串“faq”以匹配任何字符,除非它是a string og“faq”
然而,听起来negative lookbehind 可能是工作的工具:https://serverfault.com/questions/78624/apache-2-negative-filesmatch-filesnotmatch