检查单词是否存在两次?(正则表达式)

MNS*_*MNS 0 javascript regex

我在Regex上很恐怖,我想要的是检查字符串是否有两次单词http,例如:http://stackoverflow.com/questions/askhttp://stackoverflow.com/questions/ask,在javascript中使用正则表达式的强大功能.

谢谢.

Exp*_*lls 7

/http.*http/
Run Code Online (Sandbox Code Playgroud)

这是最简单的表达方式.这是http字符串中的任意位置,后跟零个或多个字符http.


Ska*_*ski 5

虽然没有完全回答问题。为什么不使用带有偏移量的indexOf(),如下所示:

var offset = myString.indexOf(needle);
if(myString.indexOf(needle, offset)){
   // This means string occours more than one time
}
Run Code Online (Sandbox Code Playgroud)

indexOf 比正则表达式更快。此外,它不太容易受到破坏代码的特殊字符的影响。