Swift-如何检查不包含标点和数字的字符串
我想检查一个字符串,以便能够理解该字符串适合用作应用程序中的显示名称。下面的块只查找英文字符。我怎样才能涵盖所有语言字母?此外,不允许使用所有标点符号和数字Swift-如何检查不包含标点和数字的字符串,swift,Swift,我想检查一个字符串,以便能够理解该字符串适合用作应用程序中的显示名称。下面的块只查找英文字符。我怎样才能涵盖所有语言字母?此外,不允许使用所有标点符号和数字 func isSuitableForDisplayName(inputString: String) -> Bool { let mergedString = inputString.stringByRemovingWhitespaces let characterset = CharacterSet(charac
func isSuitableForDisplayName(inputString: String) -> Bool {
let mergedString = inputString.stringByRemovingWhitespaces
let characterset = CharacterSet(charactersIn: "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")
if mergedString.rangeOfCharacter(from: characterset.inverted) != nil {
return false
} else {
return true
}
}
您可以使用,它包含Unicode类别L和M中的所有字符
M类包括组合标记。如果您不想要这些,请使用:
CharacterSet.letters.subtracting(.nonBaseCharacters)
另外,检查字符串是否只包含字符集中的字符的方法也很奇怪。我会这样做:
return mergedString.trimmingCharacters(in: CharacterSet.letters) == ""
谢谢我用你们的答案更新了上面的问题。那么它的用途好吗?在检查之前,我也会删除空格。@iamburak查看对我答案的编辑。检查字符串是否只包含字符集中的字符的方法非常奇怪。