1

是的,另一个正则表达式(javascript实现)问题......

我不知道如何找到字符串“cat”,只要它出现在“dog”之前的任何位置。

所以对于下面的句子...

cat categorically hates the dog, im going to mention cat again. 

将找到第一次和第二次出现,而不是最后一次。

4

2 回答 2

3

您需要使用前瞻:

/cat(?=.*dog)/

匹配任何后面跟着“狗”的任何“猫”,考虑到中间可能有其他字符。

于 2013-10-04T00:05:04.077 回答
0

您的问题指出:

只要 'cat' 出现在'dog' 之前的任何位置,我都不知道如何找到它。

正则表达式是:

cat(?!.*dog)

这使用否定查找来查找没有被狗跟随的猫。

于 2013-10-04T00:19:53.727 回答