2016-09-04 8 views
0

私は現在、すべての単語に一致する正規表現(Pythonで)を作成しましたが、特殊文字は無視します。スウェーデン語ではあるが数字ではない正規表現

ただし、数値も一致します。数字と一致しないようにするにはどうすればいいですか?

+3

ヒントになります:** \ ** wのフラグは[a-zA-Z0-9_]と等価であるだけで –

+0

正規表現は、このためには不適切です一般的な場合のタスク。ここの解決方法は、例えば、 * TV-program *または*idé*しかし、より一般的には、一致するフラグメントがURL、電子メールアドレスなどの一部であるか実際には単語であるかを判断することはできません。言語分析のためのシステムは言語固有のトークナイザを使用しますが、それでも実際の生きている人間の自由形式の散文では100%を大幅に下回ります。 – tripleee

答えて

3

\wの文字クラスは、[A-Za-z0-9_]に相当します。

ので、多分:

[åäöÅÄÖA-Za-z_]+ 

は、より良い選択

+0

\ wについて知りませんでした!どうもありがとうございました。 – osk

+1

'\ w'は「フラグ」ではありませんが、文字クラスとその内容はコンテキスト(Unicodeかどうか)によって変化します。デフォルトではPython 2.7には '[A-Za-z0-9_]'のみが含まれていますが、Unicodeフラグ( 're.U')を指定するか、Python 3ではデフォルトで他のアルファベットのアクセント付き文字、 。 –

関連する問題