3JT
3JT

Reputation: 13

How to find accents character from string in ios?

I need to find accents character from string , Not remove character.

I tried with following code but don't know how to identified that is accents character?

var str = "Hello, plaAyground"
    var scalars = str.unicodeScalars

    str = "Hello, plåÅyground"
    scalars = str.unicodeScalars
    print(scalars.dropFirst())

Upvotes: 1

Views: 1070

Answers (1)

mag_zbc
mag_zbc

Reputation: 6992

You can create a custom CharacterSet that contains all the characters you need, and then search your target string for occurrences of characters from that set

let str = "Hello, plåÅyground"
let characters = "åÅ" // put all required characters in that string
let characterSet = CharacterSet(charactersIn: characters)
if let _ = str.rangeOfCharacter(from: characterSet) {
     // do stuff here
}

If you want to differentiate between occurrences of uppercase/lowercase, create separate character sets for uppercase/lowercase characters

let str = "Hello, plåÅyground"
let uppercaseCharacters = "Å"
let lowercaseCharacters = "å"
let uppercaseCharacterSet = CharacterSet(charactersIn: uppercaseCharacters)
let lowercaseCharacterSet = CharacterSet(charactersIn: lowercaseCharacters)
if let _ = str.rangeOfCharacter(from: uppercaseCharacterSet) {
     // uppercase character found
} else if let _ = str.rangeOfCharacter(from: lowercaseCharacterSet) {
    // lowercase character found
}

Upvotes: 1

Related Questions