模式匹配检查

时间:2014-04-23 06:27:47

标签: javascript regex

如何在字符串"completed"

中搜索"test1|completed"

是否有任何正则表达式可用于解决此问题。我使用了溢出功能

4 个答案:

答案 0 :(得分:1)

if ('test1|completed'.indexOf('completed') !== -1) console.log('found')

当找不到字符串时,indexOf将返回-1。它比正则表达式更快更容易,但如果你想要:

if ('test1|completed'.match(/completed/)) console.log('found')

另请参阅:How to check whether a string contains a substring in JavaScript?

答案 1 :(得分:0)

你不需要这里的RegEx。只需使用String.prototype.indexOf功能,就像这样

"test1|completed".indexOf("completed") !== -1

indexOf函数将返回原始字符串中正在搜索的字符串的起始索引。如果未找到,则返回-1。因此,如果indexOf的结果不等于-1,则搜索的字符串将出现在原始字符串中。

注意:在下一版本的JavaScript(ECMAScript 6)中,String对象中会有一个名为contains的函数,您可以像这样使用它们

var str = "To be, or not to be, that is the question.";

console.log(str.contains("To be"));       // true
console.log(str.contains("question"));    // true
console.log(str.contains("nonexistent")); // false
console.log(str.contains("To be", 1));    // false
console.log(str.contains("TO BE"));       // false

答案 2 :(得分:0)

/completed/

将满足您的目的

var str = "test1|completed";
var res = /completed/.test(str);
console.log(res);

答案 3 :(得分:0)

你可以提醒它并看到它将返回匹配的字符串 如果不匹配,则返回null。

alert("test1|completed".match("completed"));