gpt4 book ai didi

javascript - 用javascript计算点返回一半

转载 作者:行者123 更新时间:2023-12-04 17:20:33 24 4
gpt4 key购买 nike

我编写了一个小函数来计算字符串中某个字符出现的次数。它一直运行良好。

在我尝试数点之前,它一直给我应有的一半数。我究竟做错了什么?我没有以正确的方式转义点吗?

function count(s1, letter) {
return (s1.length - s1.replace(new RegExp(letter, "g"), '').length) / letter.length;
}

var loc = 'http://www.domain.com/page' // I'm actually using window.location.href in practice.

var someStringWithDots = 'Yes. I want. to. place a. lot of. dots.';

var somestring = 'abbbcdefg';

count(somestring, 'b');
//returns 3 - correct

count(someStringWithDots, '\\.');
//returns 3 - incorrect

count(loc, '\\.');
//returns 1 - incorrect

最佳答案

只需使用 .match 即可:

function count(s1, letter) {
return ( s1.match( RegExp(letter,'g') ) || [] ).length;
}

count('Yes. I want. to. place a. lot of. dots.','\\.'); //=> 6

[edit] 如果找不到匹配项,.length 会抛出错误。
为此添加了一个解决方法 (... || [])

关于javascript - 用javascript计算点返回一半,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4322411/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com