2017-12-17 9 views
0

jqueryとvalidateプラグインを使用して入力フィールドを検証しようとしています。しかし、私の正規表現は失敗し続けます。正規表現は、私がajaxを使ってphpファイルで実行すると完全に動作します。しかし、私は入力フィールドに書かれたすべての文字についてajaxリクエストを実行したくありません。正規表現はjavascriptで異なる動作をしますか?私は別の場所にフラグを配置する必要がありますか?Regex jquery validateが失敗し続ける

Uncaught SyntaxError: Invalid regular expression: /^\p{L}[\p{L} \'&-]*[\p{L}]$/: Invalid escape

$.validator.addMethod(
    "regex", 
    function(value, element, regexp) { 
    var re = new RegExp(regexp); 
    return this.optional(element) || re.test(value); 
    }, 
); 

contact_name: { 
    required: true, 
    regex: /^\p{L}[\p{L} \'&-]*[\p{L}]$/u 
} 
+0

"JavaScriptで正規表現diffrently振る舞うのか?"はい、js正規表現エンジンはあなたが使用している特別な文字を認識しないので、この正規表現のjsバリエーションを記述する必要があります:https://stackoverflow.com/questions/31450128/validation-using-pl-in-javascript-regexp – sinisake

答えて

1

Javascriptが正規表現の異なる種類があります。式hereを確認できます。それは素敵なウェブです。

私はあなたがこれをやろうとしていることを考える:

^[a-zA-Z][a-zA-Z '&-]*[a-zA-Z]$ 
+0

ありがとう!私の正規表現の書き換えをしなければならない – Rajohan

関連する問題