是否可以检查字符是否属于CharacterSet
?
我想知道CharacterSet
应该用什么-
字符。我是否使用symbols
?
我检查了此文档,但仍然不知道。 https://developer.apple.com/documentation/foundation/characterset
当删除字符串末尾多余的空格时,我们这样做:
let someString = " "
print("\(11111) - \(someString)".trimmingCharacters(in: .whitespaces))
但是,如果我只想删除-
,该怎么办?还是任何特殊字符,例如*
?
编辑:如果可能,我正在为每个CharacterSet
寻找一组完整的字符。
答案 0 :(得分:4)
所需的内容在Unicode标准中定义。它被称为Unicode常规类别。每个Unicode字符都在一个类别中。
Unicode网站提供了complete character list,其中显示了字符的代码,类别和名称。您还可以找到Unicode categories的完整列表。
-
是U + 2D(连字符减)。它被列为“ Pd”(标点)类别。
如果您查看CharacterSet
的文档,则会看到punctuationCharacters
,其记录为:
返回一个字符集,其中包含Unicode通用类别P *中的字符。
“ P *”类别中包含“ Pd”类别(表示任何“ P”类别)。
我还发现https://www.compart.com/en/unicode/category是按类别列出每个字符的第三方列表。比Unicode参考更加用户友好。
总结。如果您想知道给定字符要使用哪个CharacterSet
,请使用我链接的图表之一查找字符的类别。知道其类别后,请查看CharacterSet
的文档,以了解适用于该类别的预定义字符集。