/ / jQuery正規表現問題 - jquery、jquery-validate

jQuery正規表現の問題 - jquery、jquery-validate

1つのJqueryライブラリを使用して、ファイル内のjson形式の正規表現を取得し、それをファイルから検証しようとします。

"Studentnumber":{
regex: "/^[-/@#&$*ws]+$/",
alertText: "* Invalid Student Number"
}, // ...

次のように私は私のテキストボックスのフィールドでこれを使用することができます

<input type="text" class="validate[required,custom[Studentnumber]] Textbox">

以前は、次のようなフィールドにJavaScriptの正規表現を使用していました

<input type="text" validate="regex" regex="^[-/@#&$*ws]+$" name="sno" id="sno">

同じ正規表現を使うとJavaScriptでjqueryに使用されます。 JavaScriptと同じようには検証されず、不適切な結果がもたらされます。両者の違いは何ですか?

回答:

回答№1は1

あなたは文字列の中でバックスペースを使っていて、後でそれらを望んでいるので、あなたはこのようにそれらをエスケープする必要があります:

"Studentnumber":{
regex: "/^[-/@#&$*\w\s]+$/",
alertText: "* Invalid Student Number"
}

しかし、これを見ても100%はわからないが、2つではなく4つのバックスラッシュになるかもしれないが、その理由は なぜ 現時点で私を脱出します。


回答№2の場合は0

プラグインがregexpとどのように連携するかによって異なります。引用符を削除するか、新しいインスタンスを作成してください。

"regex": /^[-/@#&$*ws]+$/

または

"regex": new RegExp("/^[-/@#&$*ws]+$/")