Check是一个字符串,并不是使用正则表达式的其他单词

时间:2016-12-16 06:21:30

标签: javascript regex-negation

我有一个案例,我需要找到一个字符串是否与javascript中使用正则表达式的单词完全匹配。

我正在尝试消极的向前看。

var reg = /(?!(^Hello$))/
var a = "Hello";
var b = "something else";


console.log(reg.test(a)) // I need this to be false
console.log(reg.test(b)) // I need this to be true

我怎样才能做到这一点?在Javascript中,控制台日志都是真实的

1 个答案:

答案 0 :(得分:0)

问题是你没有锚定整个正则表达式,所以它可以匹配输入字符串中的任何一点。它在开头不会匹配,但它会在'H'之后匹配,因为(?!(^Hello$))之后没有匹配'H'的字符串,从而满足负面看法 - 进取。

为了让你的正则表达式做你想做的事,锚定它:

var reg = /^(?!Hello$)/;