次の正規表現チェックはコード内では機能しません。私はregex101.comでこのパターンを使用している場合しかし、それは、これは、ここで起こっている、なぜあなたは私を助けてもらえ完全正規表現テスタでは動作しますが、実際のコードでは動作しない正規表現パターン
var pattern = "^([a-zA-Z0-9]([-\.\w]*[a-zA-Z0-9])*@([a-zA-Z0-9][-\w]*[a-zA-Z0-9]\.)+[a-zA-Z]{2,9})$";
var value = "[email protected]";
var regexp = new RegExp(pattern);
if (!regexp.test(value)) {
\t alert("Failed");
} else {
\t alert("passed");
}
動作します。ちなみに、下記のようにいくつかの変更を加えると動作します。しかし、私はあなたがそれらのバックスラッシュ(\
)をエスケープする必要があり
var pattern = /^([a-zA-Z0-9]([-\.\w]*[a-zA-Z0-9])*@([a-zA-Z0-9][-\w]*[a-zA-Z0-9]\.)+[a-zA-Z]{2,9})$/;
var value = "[email protected]";
if (!pattern.test(value)) {
\t alert("Failed");
} else {
\t alert("passed");
}
*私はそれが新しいRegExp(パターン)と一緒に働くことを望んでいます*なぜですか? –
@torazaburoは答えを得ました..各バックスラッシュの正式表記に余分なバックスラッシュを追加する必要があります。 – Amrinder