0

誰かが私を助けてくれるのではないかと思います。

フィールド検証の一部として、次のpregmatch式を使用しています。

(!preg_match('/^$|^[A-Za-z0-9 .,;-]{5,60}$/', $address4))

私が抱えている問題は、許可したい文字の一部としてアポストロフィを含めると、これを機能させることができないことです。

私はいくつかのチュートリアルを読み、次のことを試しましたが成功しなかったので、明らかに何か間違ったことをしています:

(!preg_match('/^$|^[A-Za-z0-9 .,;-\']{5,60}$/', $address4)),

(!preg_match('/^$|^[A-Za-z0-9 .,;-\'\]{5,60}$/', $address4))

誰かがこれを見て、どこが間違っているのか教えてくれないかと思っただけです。

4

1 に答える 1

1

正規表現の文字クラスのマイナス文字は、常に最後にある必要があります。それ以外の場合は、文字範囲として取得されます。したがって、アポストロフィとマイナスを入れ替えてみてください。

preg_match('/^$|^[A-Za-z0-9 .,;\'-]{5,60}$/', $address4)
于 2013-03-10T15:27:43.617 に答える