检测字符串中是否存在确切数字

时间:2015-06-10 05:31:07

标签: javascript regex

您好我有一个字符串可能是这样的

var str = "127"; 

var str ="127,5,28,12";

我想检查号码是否存在我不想再添加它。所以我用

if(!str.includes(id))
     // do so and so 

includes的问题在于,如果我搜索1,它将从127获得它并且这不准确。有没有更好的方法来检测js中的确切数字?

3 个答案:

答案 0 :(得分:3)

尝试:

var str ="127,5,28,12";
var exists = str.split(/,/).indexOf("127")

if(exists > -1){
    alert("127 Exists!")
}

//--- Like your example ---

String.prototype.includes = function(id){
    return this.split(/,/).indexOf(id) !== -1
}

if(str.includes("28")){
    alert("28 Exists!")
}

答案 1 :(得分:2)

你可以使用:

str.split(',').indexOf('127');

答案 2 :(得分:1)

您可以使用word boundary (\b)

/\b127\b/.test(str)
// => true
/\b1\b/.test(str)
// => false