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

2 Answers

0 votes
import Foundation

func countCharacters(_ s: String) {
    let arr = Array(s)
        
    var letter = 0, spaces = 0, numbers = 0, otherchars = 0
        
    for char in arr {
        if char.isLetter {
            letter += 1
        } else if char.isNumber {
            numbers += 1
        } else if char.isWhitespace {
            spaces += 1
        } else {
            otherchars += 1
        }
    }
        
    print("letter: \(letter)")
    print("space: \(spaces)")
    print("number: \(numbers)")
    print("other: \(otherchars)")
}
    
let s = "Sw12ift $%     Prog()ramming   99 !!!"
        
countCharacters(s)



/*
run:

letter: 16
space: 10
number: 4
other: 7

*/

 



answered Nov 24, 2024 by avibootz
0 votes
import Foundation

func countCharacters(in str: String) -> (letters: Int, spaces: Int, numbers: Int, others: Int) {
    var letters = 0
    var spaces = 0
    var numbers = 0
    var others = 0
    
    for char in str {
        if char.isLetter {
            letters += 1
        } else if char.isWhitespace {
            spaces += 1
        } else if char.isNumber {
            numbers += 1
        } else {
            others += 1
        }
    }
    
    return (letters, spaces, numbers, others)
}
    
let s = "Sw12ift $%     Prog()ramming   99 !!!"
        
let counts = countCharacters(in: s)

print("Letters: \(counts.letters), Spaces: \(counts.spaces), Numbers: \(counts.numbers), Others: \(counts.others)")



/*
run:

Letters: 16, Spaces: 10, Numbers: 4, Others: 7

*/

 



answered Nov 24, 2024 by avibootz
...