簡體   English   中英

如何計算字符串中的字母?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM