假设: str value ='这是一些文字';
我想算一下't'次出现次数,怎么做?
答案 0 :(得分:9)
使用正则表达式更容易
var regex = new RegExp("t", "gi")
var count = "This is some text".match(regex).length;
将在给定字符串中给出t
的计数(忽略大小写)。
您可以对其进行测试here。
进一步参考
RegExp 1
RegExp 2
String
String.match()
答案 1 :(得分:4)
var sValue = 'This is some text';
var tCount = sValue.split("t").length - 1;
alert("t appears " + tCount + " times");
如果要计算所有字母的出现次数,最好使用一个循环,如其他答案所示。
答案 2 :(得分:2)
一个简单的解决方案是循环
var count = 0;
for(var i = 0; i < str.length; i ++) {
if(str.charAt(i) === 't')
++count;
}
如果您不想区分大小写,可能还需要使用str.toLowerCase();
。
答案 3 :(得分:1)
我认为你们都比它需要的更复杂。使用正则表达式。这也是不区分大小写的。如果您想要区分大小写,请在g。
之后删除ivar str = "This is some text";
var pattern = /t/gi;
alert(str.match(pattern).length);
缩短时间。
var str = "This is some text";
alert(str.match(/t/gi).length);
答案 4 :(得分:0)
有几种方法可以做到这一点......
function countChar(str, searchChar) {
var num=0;
for (var i=0; i<str.length; ++i) {
if (str[i] == searchChar)
++num;
}
return num;
}
使用像:
numt = countChar('这是一些文字','t');
答案 5 :(得分:0)
<button onclick="alert(countCharacter('abcdea', 'a'));"> Test! </button>
<script type="text/javascript">
function countCharacter(sample, characterToFind) {
var result = 0;
for(i = 0;i<sample.length;i++) {
if(sample[i] === characterToFind) {
result++;
}
}
return result;
}
</script>
答案 6 :(得分:0)
可能可以帮到你
.replace().length
关于
<强> Wazzy 强>