string.match()
Javascriptには、、string.replace()
およびstring.split()
関数を介してアクセスされる正規表現エンジンが含まれています。
例えば:
var mystring = "this is a sentence";
mystring = mystring.replace(/sentence/,'string');
var matches = mystring.match(/\b\w+\b/);
これにより、基本的にと同じ機能が提供されpreg_match()
ます。
したがって、質問のpreg_matchと同じ検証を行うには:
if(!phone.val().match(/^[0-9]{3}-|\s[0-9]{3}-|\s[0-9]{4}$/)) {
phone.addClass("needsfilled");
phone.val(phonerror);
}
preg_match()
PHPバージョンとまったく同じように機能するという関数を使用することを絶対に主張する場合は、JavascriptでPHP関数を実装することを目的としたPHPJSというプロジェクトがあります。彼らのサイトをざっと見てみると、彼らは現在完全に機能しているpreg_match()
実装を持っていませんが、あなたが見たいと思うかもしれない未完成の実装を持っていることがわかります。しかし率直に言って、組み込みのJavascript.match()
関数で十分です。