ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript の正規表現が機能しないのはなぜですか

JavaScript の正規表現が機能しないのはなぜですか

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-18 13:25:30471ブラウズ

Why Is My JavaScript Regular Expression Not Working

JavaScript RegEx Not Working?

コードは正規表現を使用して日付形式の正当性をチェックしますが、常に false を返します。問題は正規表現の構築にあります。

文字列から正規表現を初期化するとき、パターン内のバックスラッシュ () を二重引用符で囲む必要があります。これは、文字列パーサーがバックスラッシュを文字列定数の特殊文字として扱うためです。

間違ったコード:

var regEx = new RegExp("^(0[1-9]|1[0-2])/\d{4}$", "g");

正しいコード:

var regEx = new RegExp("^(0[1-9]|1[0-2])//\d{4}$", "g");

または、さらに簡単に、スラッシュをエスケープする必要なく正規表現構文を使用します。

var regEx = /^(0[1-9]|1[0-2])/\d{4}$/g;

これで、正規表現は「MM/YYYY」形式の日付と正しく一致するはずです。 。正規表現パターン内に埋め込まれているスラッシュ (/) は必ず二重引用符で囲んでください。

以上がJavaScript の正規表現が機能しないのはなぜですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。