[英]How to count Letters inside a string?
我的代碼:
function letterCounter(str) {
var letters = 0;
var alphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
for (var i=0; i<str.length;i++) {
if (str[i] === alphabet.split("")) {
letters = letters + str[i];
}
}
console.log(letterCounter("Hello World!!!1"));
}
我不確定我犯了什么錯誤,我的答案是 0 個字母。 謝謝。
您正在使用str[i] === alphabet.split("")
將一個字符與一個數組進行比較,這是沒有意義的,您需要檢查該字符是否在數組內。 此外, console.log
不能在函數內部,否則會使其被無限次遞歸調用。
使用
function letterCounter(str) { var letters = 0; var alphabet = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; var ar = alphabet.split(""); for (var i=0; i<str.length;i++) { if (ar.indexOf(str[i]) > -1) { letters = letters + 1; } } return letters; } console.log(letterCounter("Hello World!!!1"));
另一種方法是使用正則表達式:
var s = "Hello World!!!1"; var rx = /[az]/gi; var m = s.match(rx); if (m) { console.log(m.length); }
您可以使用正則表達式:
function letterCounter (x) { return x.replace(/[^a-zA-Z]/g, '').length; } console.log(letterCounter('Hello World!!!1'))
e
,計算字母e
個數:
var str = "Hello hello hello hello"; var lengthOfE = str.match(/e/gi).length; console.log(lengthOfE);
然后在循環中使用它來計算每個元素的計數
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.