整理符号和等价类的用途是什么?

Tim*_*Tim 12 grep regular-expression locale

来自 grep 的手册,关于它使用的扩展正则表达式

‘[.’ represents the open collating symbol.
‘.]’ represents the close collating symbol.
‘[=’ represents the open equivalence class.
‘=]’ represents the close equivalence class.
Run Code Online (Sandbox Code Playgroud)

整理符号和等价类的用途是什么?

它们是如何使用的?

谢谢。

Ste*_*itt 12

在语言环境定义中使用整理符号和等价类来编码复杂的排序信息。POSIX有详细信息,但总而言之:

  • 整理符号表示一组字符,这些字符被视为用于整理(排序)目的的单个单元;例如,“ch”/“Ch”或“ss”(这些仅在定义它们的语言环境中有效);
  • 等价类将出于整理目的等价的字符分组;例如,“a”和“à”(以及其他重音变体)。

这些可以通过分别用/和/括起来在RE 括号表达式中使用。继续上面给出的例子,是“ch”整理符号,代表相应的等价类(所以在适当的语言环境中它等价于)。[..][==][.ch.][=a=][aªáàâãäå...]