9

私はMVCデータ注釈を使用していますが、アドレスフィールドには、を除く任意の文字を含めることができます(つまり、英語以外の文字も使用できます)< > . ! @ # % / ? *

多くのサイトを検索しましたが、この正規表現の書き方がわかりませんでした。

これまでに試しました:

[Required(ErrorMessage = "Address Required.")]
[RegularExpression(@"^[<>.!@#%/]+$", ErrorMessage = "Address invalid.")]
public string Address { get; set; }
4

4 に答える 4

14

正規表現に、注意書きでリストされている文字以外の任意の文字を選択させます。

[^abc] 

a、b、またはc以外のものと一致します。

つまり、すべてをまとめると、正規表現は次のようになります。

^[^<>!@#%/?*]+$

ここで、角括弧の外側のカレットは「行の先頭に一致する」ことを意味しますが、角括弧の内側は「次のいずれでもないものに一致する」ことを意味することに注意してください。

于 2012-09-14T10:29:05.447 に答える
13

現在、これらの文字のみで構成される文字列のみを許可しています。

使用する

"^[^<>.!@#%/]+$"
于 2012-09-14T10:25:27.897 に答える
2

正規表現を試してください:

[^<>.!@#%/?*]
于 2012-09-14T10:25:39.130 に答える
1

これで作業が完了します。

「[^<>。!@#%/]」

編集

。(ドット)は正規表現で予約されている文字なので、エスケープする必要があります。

于 2012-09-14T10:26:50.517 に答える