0

私はこの正規表現を持っています

\b(t[úu]s*)\b

そして、私はこの言葉を持っています:

tu (作品)
tú (動作しません)
タス(作品)
tús (作品)

一致しないのはなぜですか?

4

2 に答える 2

3

正規表現が一致しない場合、2 つの文字は異なります。

「u with acute」は、単一の文字ú(U+00FA) として表現するか、u(U+0075) と組み合わせて鋭角アクセント文字 (U+0301) を組み合わせることで、同様の外観を与えることができúます。

入力文字列を変換するか、両方のバリアントを正規表現に含める必要があります。詳細については、 http://www.regular-expressions.info/unicode.htmlを参照してください。

于 2013-03-27T13:20:51.100 に答える
2

その式が一致しないのはなぜですか?

その式は、単語の文字として認識されないように見えるため、一致しません。したがって、単語以外の文字の間で使用すると失敗します。\bú

代わりに次のようなものを使用できます。

/(?<!\p{L})(t[úu]s*)(?!\p{L})/u

\p{L}Unicode 文字に一致します。

于 2013-03-27T14:00:40.613 に答える