How to count the letters, spaces, numbers and other characters of a string in JavaScript

2 Answers

0 votes
let isAlpha = function(ch) {
  return typeof ch === "string" && ch.length === 1
         && (ch >= "a" && ch <= "z" || ch >= "A" && ch <= "Z");
}
  
function countCharacters(s) {
    let letter = 0, spaces = 0, numbers = 0, otherchars = 0;
            
    for (let i = 0; s[i]; i++) {
        if (isAlpha(s[i])) {
            letter++;
        }
        else if (s[i] >= '0' && s[i] <= '9') {
            numbers++;
        }
        else if (s[i] === ' ') {
            spaces++;
        }
        else {
            otherchars++;
            }
    }
    console.log("letter: " + letter);
    console.log("space: " + spaces);
    console.log("number: " + numbers);
    console.log("other: " + otherchars);
}
    
const s = "JavaScript $100%     Prog()ramming   99 !!!";
            
countCharacters(s);

    
    
/*
run:
      
letter: 21
space: 10
number: 5
other: 7
      
*/

 



answered Aug 7, 2021 by avibootz
edited Aug 28, 2024 by avibootz
0 votes
function countCharacters(s) {
    const onlyLettersRegex = /^[a-zA-Z]$/;
    let letter = 0, spaces = 0, numbers = 0, otherchars = 0;

    for (let i = 0; s[i]; i++) {
        if (onlyLettersRegex.test(s[i])) {
            letter++;
        } else if (s[i] >= '0' && s[i] <= '9') {
            numbers++;
        } else if (s[i] === ' ') {
            spaces++;
        } else {
            otherchars++;
        }
    }
    
    console.log("letter: " + letter);
    console.log("space: " + spaces);
    console.log("number: " + numbers);
    console.log("other: " + otherchars);
}
    
const s = "JavaScript $100%     Prog()ramming   99 !!!";
            
countCharacters(s);

    
    
/*
run:
      
letter: 21
space: 10
number: 5
other: 7
      
*/

 



answered Aug 28, 2024 by avibootz
...