15

を含むいくつかの正規表現に出くわしました[^\\p{L}]。これが何らかの形式の Unicode カテゴリを使用していることは理解していますが、ドキュメントを確認したところ、次の「L」カテゴリしか見つかりませんでした。

Lu  Uppercase letter    UPPERCASE_LETTER
Ll  Lowercase letter    LOWERCASE_LETTER
Lt  Titlecase letter    TITLECASE_LETTER
Lm  Modifier letter     MODIFIER_LETTER
Lo  Other letter        OTHER_LETTER

Lこの文脈では何ですか?

4

2 に答える 2

18

このリンクから取得: http://www.regular-expressions.info/unicode.html

セクションを確認してくださいUnicode Character Properties

\p{L} は、カテゴリ「文字」の単一のコード ポイントに一致します。入力文字列が U+0061 U+0300 としてエンコードされている場合、アクセントのない a に一致します。入力が U+00E0 としてエンコードされている場合、アクセントと一致します。その理由は、コード ポイント U+0061 (a) と U+00E0 (à) の両方がカテゴリ「文字」にあるのに対し、U+0300 はカテゴリ「マーク」にあるためです。

于 2011-05-11T19:28:59.193 に答える
3

明示的な言及はありませんが、このページ\\p{L}の例は、それが任意の文字を意味することを示しています。

カテゴリはオプションの接頭辞 Is で指定できます: \p{L} と \p{IsL} の両方が Unicode 文字のカテゴリを示します。

于 2011-05-11T19:28:45.807 に答える