这个正则表达式是用JavaScript编写的。更具体地说,stringA = content
,stringB = dam
& stringx可以是任何字符串。
我试过这个正则表达式&其他人很少:
^\/(content(?!\/(dam)))\/(.*)
但这会识别
/content/asfcew
/content/reddam
/content/usa/texas
并且无法识别
/content/dam
这很好,但是它也不能识别
/content/dam/asdfafa
/content/damred
这不好。
非常感谢任何建议,谢谢。
答案 0 :(得分:1)
您只需要向前瞻添加字符串结尾$
:
^\/(content(?!\/(dam$)))\/(.*)
^
请参阅demo
现在,(?!\/(dam$))
只会在dam
出现在字符串结尾之前失败。
请注意,此处的捕获组太多,您可以将其删除:
^\/content(?!\/dam$)\/(.*)
请参阅another demo
答案 1 :(得分:1)
正如上面的海报所说,你需要一个字符串锚$
的结束到前瞻组。
要启用它捕获/ content / dam,其余使用此模式。
> ^\/(content(?=|\/(dam$)))\/(.*)