全部或全部正则表达

时间:2013-09-04 23:33:17

标签: php javascript regex

所以我有这个正则表达式:

word1\/.+?\/word2($|[^\/]*)

我想要匹配

word/2342/word2

但不是

word/2342/word2/lalallaa

IE。一旦word2后跟一个斜杠,就不要匹配AT ALL

尽管如此,它仍然会匹配第二个正则表达式的'word / 2342 / word2'部分...我希望它根本不匹配任何东西

如何修复此正则表达式?

5 个答案:

答案 0 :(得分:2)

怎么样:

word\/.+?\/word2$

答案 1 :(得分:1)

($|[^\/]*)替换为(?!\/),或至少($|[^\/])。现在,它将匹配任意数量的非斜杠 - 包括零。

答案 2 :(得分:0)

我试过:^(word1?\/.+?\/word2($|[^\/]*))在RegExr for mac中工作,我输入了word/2342/word2/word/2342/word2/,它只匹配第一个word/2342/word2,但这只会检查字符串是否以你开头问...即使是一个简单的(word)\/[0-9]{4}\/word2也会起作用,并允许中间的任何4个数字..但是你的问题令人困惑,你真正想要的是什么?

答案 3 :(得分:0)

(.+\bword2\b)(?!\/)怎么样?

答案 4 :(得分:0)

在正则表达式/^abc$/中,^仅在字符串的开头找到模式,而$仅在字符串的末尾找到模式。结合它将尝试找到与整个字符串的匹配,它就像是全部或全部匹配。

所以请将你的正则表达式匹配在abc

的字符串中