0

私にはフォームがあり、そのフィールドが数字や特殊文字と一致しないようにしたいと思います。

今、

私はこれが好きです

name = forms.RegexField(regex = r'[^0-9]+$') 

今、それはただ数字を逃れるだけです。

数字や特殊文字をエスケープするための正規表現パターンを設定する方法。何かアドバイス?

4

3 に答える 3

0

ここに、すべての正規表現記号を表示する表があります。

http://www.javascriptkit.com/jsref/regexp.shtml

あなたの問題について、私があなたが望むものを理解しているなら、それはどうあるべきか... r'[a-zA-Z] + $'

わかりませんが、リンクの表を見てください。非常に便利です。

于 2013-02-01T09:05:46.873 に答える
0

アルファベットと数字の両方を含む単語が許可されていると仮定すると、この正規表現で作業を行うことができます

[a-zA-Z0-9]*[a-zA-Z]+[a-zA-Z0-9]*

これにより、入力フィールドに少なくとも1文字が含まれている必要があり、アルファベット、またはアルファベットと数字の組み合わせのみが許可されることがチェックされます。特殊文字は使用できません。abc 12abc abc12有効ですが、123 ab@/無効です。

私がしたことは、アプローチを逆にしたことです。特殊文字を制限する代わりに、アルファベットと上記の組み合わせのみを許可しました。これにより、特殊文字が自動的に制限されました。


番号をエスケープする必要がある場合は、次の正規表現を使用できます。

[a-zA-Z]+

これはアルファベットのみを許可し、すべての数字とすべての特殊文字を制限します。

于 2013-02-01T09:06:36.687 に答える
0

私が理解している限り、あなたは文字だけを一致させる必要があります。

Unicodeと互換性を持たせるには、プロパティを使用します。

\p{L}+

これは、任意の言語の1つ以上の文字と一致します。

于 2013-02-01T10:17:14.060 に答える