我正在尝试执行搜索,但是按我的期望它不起作用。它返回0而不是2。如何解决?
var number = '4,4';
alert(number.search(/4/g));
答案 0 :(得分:1)
.search
返回匹配的 index 。 4
与字符串的索引0匹配,因此返回0。如果要检查字符串中出现4的次数,请改用.match
,然后检查.length
匹配对象:
var number = '4,4';
const match = number.match(/4/g);
console.log((match || []).length);
(如果|| []
为空,则需要match
,在这种情况下,您希望的是0,而不是抛出错误)
答案 1 :(得分:0)
我认为您的意思是计算发生次数。
使用正则表达式存储事件并返回长度以指示计数。
var temp = "4,4";
var count = (temp.match(/4/g) || []).length;
console.log(count);
答案 2 :(得分:0)
search()方法在字符串中搜索指定的值,并返回匹配的位置。如果您要计算发生次数,则必须进行如下操作:
var number = '4,4';
var qtd = (number.match(/4/g) || []).length;
alert(qtd);