3

正規表現データ注釈を使用して、番地フィールドに数字、文字、およびスペース (間に) が含まれていることを検証しています。ユーザーが入力したテキストの最初または最後にストリート フィールドにスペースが含まれている場合、データ注釈でエラーがスローされるようにします。

例:

// [123 Fake Street] = valid
// [   123 Fake Street] = not valid
// [   123 Fake Street    ] = not valid
// [123 Fake Street   ] = not valid

これは私がこれまでに持っているものです:

[RegularExpression(@"^[a-zA-Z 0-9]+$", ErrorMessage = "Street Address not valid.")]

どんな助けでも大歓迎です。

ありがとう

4

3 に答える 3

5

少しだけ変更する必要があります。

"^(?:[a-zA-Z0-9]+\s?)+[a-zA-Z0-9]+$" 

これの意味は:

  1. 1 つ以上の文字または数字とオプションのスペースを取得し、1 回以上繰り返します。
  2. 1 つ以上の文字または数字で終了

次のように書くこともできます。

"^(?:\w+\s?)+\w+$" 
于 2012-05-25T15:44:40.937 に答える
0

探しているのが空白がない場合は、次のことができます。

^\S.+\S$

これにより、数字で始まり、文字、ピリオド、または数字で終わることが保証されます。

これは基本的に次と同等です。

^[^ ].+[^ ]$

数字で始まり、文字またはピリオドで終わるものを探すこともできます (略語の場合)。

^\d.*[\w\.]$
于 2012-05-25T16:17:12.353 に答える
0

これが学術的な演習であるかどうかはわかりませんが、ユーザーの入力から先頭と末尾の空白を削除していただけませんか? 正当なエラーではなく、単なるフォーマットの問題のようです。しかし、目標が RegEx をよりよく理解することである場合は、私のとりとめのないことは無視してください。

于 2012-05-25T15:37:14.217 に答える