2010-09-26 98 views

回答

4

更明确,我倾向于使用!.test(),如:

var hasNoMatch = !/myregex/.test(string); 

自从在规范.match()回报的情况下,空没有比赛,这个作品,以及:

var hasNoMatch = !foo.match(); 

the MDC documentation for .match()(快得多资源的大部分时间:

如果正则表达式包含g标志,则该方法返回包含所有匹配的Array。如果没有匹配,则该方法返回null

1

如果你只是测试一个模式是否匹配,你应该使用test方法,因为尼克建议。

如果您想查找与模式不匹配的内容,可以更改模式以匹配除此之外的所有内容。例如使用负值集:

// find uppercase characters 
var m = s.match(/[A-Z]+/g); 

// find everything except uppercase characters 
var m = s.match(/[^A-Z]+/g);