1

現在、正規表現を使用して一致を作成しています。英数字と、ピリオド (.)、コンマ (,)、ダッシュ (-) などの特殊文字のみを受け入れたいと考えていました。これは私のコードです:

code nullable: false, blank: false, maxSize: 30, matches : /^[0-9a-zA-Z,.-]+?[0-9a-zA-Z ]+?[0-9a-zA-Z,.-]*?$/

このコードは正常に機能しますが、1 文字と指定された特殊文字の 1 つを組み合わせて入力するたびに、エラー メッセージがスローされます。

例:

1) A. (an error is thrown)
2) A- (an error is thrown)
3) A, (an error is thrown)

上記の例は有効な入力である必要があります。指定された例を許可するために正規表現をどのように切り詰めますか?

4

1 に答える 1

2

A.は一致し[0-9a-zA-Z,.-]+?ますが、中間部分は[0-9a-zA-Z ]+?何にも一致しません。

英数字とピリオド、カンマとダッシュを一致させるだけで/^[0-9a-zA-Z,.-]+$/十分です。

于 2012-05-25T08:38:58.737 に答える