Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 一个单词后面没有一系列其他单词,包括它本身_Javascript_Regex - Fatal编程技术网

Javascript 一个单词后面没有一系列其他单词,包括它本身

Javascript 一个单词后面没有一系列其他单词,包括它本身,javascript,regex,Javascript,Regex,说你有 catdogbird 我想知道什么时候狗出现了,而不是跟在后面,比如说,鸟、狗或者什么都没有 我试着用消极的前瞻 dog(?!bird|dog) catlizard no match OK catdogbird no match OK catdoglizard match OK catdog match OOPS catdogdog match OOPS 我不希望最后两个匹配,即狗不被任何东西跟随或狗跟随自己 $匹配正则表达式中字符串的结尾: dog(?

说你有

catdogbird
我想知道什么时候狗出现了,而不是跟在后面,比如说,鸟、狗或者什么都没有

我试着用消极的前瞻

dog(?!bird|dog)

catlizard    no match OK
catdogbird   no match OK
catdoglizard match OK
catdog       match OOPS
catdogdog    match OOPS

我不希望最后两个匹配,即狗不被任何东西跟随或狗跟随自己

$
匹配正则表达式中字符串的结尾:

dog(?!bird|dog|$)

将修复上述两个错误(第二个错误是因为字符串末尾后面的第二个“dog”匹配)。

要求它匹配“dog”后面的内容:

/dog(?!bird|dog).+$/

catdoglizard
仍将匹配正则表达式,但根据问题,它不应该匹配。@Kolink为什么不应该匹配?它后面跟着“狗”,后面跟的不是“鸟”和“狗”。