代码之家  ›  专栏  ›  技术社区  ›  Glenn Posadas

如何知道哪个字符集包含给定的字符?

  •  2
  • Glenn Posadas  · 技术社区  · 5 年前

    是否有方法检查字符是否属于 CharacterSet ?

    我想知道什么 字符集 我应该用做角色吗 - . 我是否使用 symbols ?

    我查过这份文件,但还是不知道。 https://developer.apple.com/documentation/foundation/characterset

    在删除字符串末尾的多余空白时,我们这样做:

    let someString = " "
    print("\(11111) - \(someString)".trimmingCharacters(in: .whitespaces))
    

    但是如果我只想移除 - ?或任何特殊字符,如 * ?

    编辑:我在为每个人寻找完整的字符集 字符集 如果可能的话。

    1 回复  |  直到 5 年前
        1
  •  4
  •   rmaddy    5 年前

    您需要的是在Unicode标准中定义的。它被称为Unicode一般类别。每个Unicode字符都在一个类别中。

    Unicode网站提供 complete character list 显示字符的代码、类别和名称。您还可以找到 Unicode categories 也。

    这个 - 是U+2d(连字符减号)。它被列为“pd”(标点)类别。

    如果您查看文档 CharacterSet 你会看到 punctuationCharacters 记录如下:

    返回一个字符集,该字符集包含Unicode常规类别P*中的字符。

    “pd”类别包括在“p*中”(即任何“p”类别)。

    我也发现了 https://www.compart.com/en/unicode/category 这是按类别列出的每个字符的第三方列表。比Unicode引用更方便用户使用。

    总结。如果你想知道 字符集 要用于给定字符,请使用我链接的图表之一查找字符的类别。一旦你知道它的类别,看看文档 字符集 查看哪些预定义字符集适用于该类别。

    推荐文章