1

正規表現に関するヘルプが必要です。

次のような文字列に一致させる必要があります: âãa34dc

私が使用したパターン:

\s*[a-zA-Z]+[a-zA-Z_0-9]*\s

しかし、このパターンは、この種の文字列を識別するのに十分ではありません。例: âãa34dc

PS âã これらはスウェーデン語の文字です。

この種の文字列の正しいパターンを見つけるのを手伝ってください。

4

3 に答える 3

3

実際にスウェーデン語の文字に制限したいですか? つまり、ドイツ語の文字は一致しませんか? もしそうなら、おそらくアルファベット全体を列挙し、それを含める必要があります。

本当にすべてのアルファベット文字に一致させたい場合は、すべての文字に一致させるための正規表現用語を使用してください。

\w任意の単語文字に一致しますが、数字と句読点が含まれます。それは近いですが、あなたが2期目に望むものとは正確には異なります.

数字を含めたくない最初の項では、文字が Unicode の「文字」クラスであることを指定すると機能します。\p{L}文字であるすべての Unicode 文字を指定します。これには、[a-zA-Z]、スウェーデン語のすべての文字、ドイツ語、ロシア語などが含まれます。

したがって、この正規表現はあなたが望むものだと思います:

\s*[\p{L}][\p{L}_0-9]*\s

他の文字セットの数字その他の句読点を含めたい場合[\w]*は、2 番目の用語に使用できます。

于 2012-04-06T18:53:37.573 に答える
0

一連のルールを教えてください。

あなたの質問によると:

    [X-Ya-zA-Z]{3}[0-9]{2}[a-zA-Z]{2}

X をスウェーデン語の最初の文字に置き換えます

Y を最後のスウェーデン文字に置き換えます

于 2012-04-06T18:32:28.467 に答える
0

John Machinは、これに対する優れた回答を提供しています。彼のパターンを適応させると、必要なのはおそらく次のようなものです。\s*[^\W\d_]\w*\s*

PS私+はあなたの最初の部分から数量詞を削除しました。後続の文字は、後続の数量化された によって一致し\wます。

于 2012-04-06T18:48:04.783 に答える