我正在解析一个混乱的XML。我发现许多节点仅包含不可见字符,例如:
"\n "
" "
"\t "
"\n "
"\n\n"
我看到了一些有关字母和数字的文章和答案,但是在我的项目中解析的XML包含UTF8字符。我不确定如何在过滤器中列出所有可见的UTF8字符。
如何确定字符串是否由上述完全不可见的字符组成,因此可以将其过滤掉?谢谢!
答案 0 :(得分:2)
为此使用CharacterSet
。
let nonWhitespace = CharacterSet.whitespacesAndNewlines.inverted
let containsNonWhitespace = (string.rangeOfCharacter(from: nonWhitespace) != nil)
答案 1 :(得分:0)
修剪空白字符串和换行符,看看还剩下什么。
if someString.trimmingCharacters(in: .whitespacesAndNewlines).isEmpty {
// someString only contains whitespaces and newlines
}