特定のロケールで正規表現オブジェクトを埋め込むと、どのようにマッチング動作に影響しますか?照合に影響するの?私はどこでも説明を見つけることができないようです。正規表現ライブラリのロケール固有の動作?
19
A
答えて
42
これは、少なくとも以下の影響:
- 照合:正規表現
[a-f]
フランス語ロケールを吹き込まが文字éと一致する必要があります。 同様
- 、キャラクタAと一致している必要があり、フィンランドロケールに
\w
(しかし[a-z]
はないは、A、AとおよびOフィンランドにおけるzの後に照合する。ドイツでは、しかし、[a-z]
はAと一致しなければならないべきである。) - でUnicode互換のロケールの場合は、Unicode equivalenceアルゴリズムを使用して、構成された文字の形が分解された形に一致するようにする必要があります。
- POSIX互換のregexフレーバ(basic、extended、awk、grep、およびegrep)の場合、POSIX character classesはロケール対応である必要があります。
[=e=]
はフランス語ロケールではéに一致しますが、英語ロケールでは一致しません。
3
「ch」と「ll」は、関連するエンティティによって変更されたため、アルファベットでは1文字とはみなされないことに注意してください。私は、正確な日付を見つけることができなかったが、それは今、「CH」と2つの文字です「LL」:
http://en.wikipedia.org/wiki/Ll
私は実装が今その事実を反映だと思います。
関連する問題
- 1. Java固有の正規表現テストプログラム
- 2. 正規表現でのUmlauts(ロケール経由)
- 3. 等号後の正規表現固有の単語
- 4. 有効な正規表現の正規表現文字列
- 5. (Javascript)正規表現固有の文字(除外)
- 6. Perlの正規表現は、固定
- 7. 正規表現検証の動作
- 8. javascriptで正規表現の動作
- 9. 正規表現の正規表現の正規表現
- 10. ロケール固有のダウンロードリンク
- 11. 固有名詞にマッチする正規表現+数字
- 12. 正規表現が動作しないための正規表現
- 13. 有効な正規表現がPythonで動作しない
- 14. simple_html_domライブラリのPHP正規表現
- 15. Borland Builder 6.0の正規表現ライブラリ
- 16. 正規表現ライブラリなしのシンプルな正規表現ですか?
- 17. 正規表現の正規表現と ' -
- 18. 正規表現の正規表現データ
- 19. 正規表現の正規表現
- 20. C#正規表現の正規表現
- 21. 正規表現用の正規表現
- 22. 正規表現の作成
- 23. 正規表現の作成?
- 24. 正規表現が異なる動作
- 25. 有効な終了の正規表現
- 26. 有効なハッシュタグの正規表現
- 27. R:正規表現は、このロケールでは無効です
- 28. 必須の要素を持つ特定のメッセージパターンに固有の正規表現
- 29. ロケール固有のインデックス文字
- 30. Momentjsロケール固有の平日()
も参照してください。http://stackoverflow.com/q/10540305/83805 –
@DonStewart:私はC++仕様にのみ興味がありました。ロケール固有の動作は、私が想像するところでは必ずしも同じではありません。 –
ロケールはPOSIX準拠の正規表現エンジンに影響を与えます。少なくとも、正規表現ライブラリのほとんどの出発点です。 –