[解決済み] パターンにマッチするか、空文字列である正規表現
2022-10-26 16:03:58
質問
私は、電子メールアドレスの形式に一致する次の正規表現を持っています。
^[\w\.\-]+@([\w\-]+\.)+[a-zA-Z]+$
JavaScriptを使用したフォームでの検証に使用します。しかし、これはオプションのフィールドです。したがって、メールアドレスの形式や空文字列にマッチするようにこの正規表現を変更するにはどうしたらよいでしょうか?
私の限られた正規表現に関する知識からすると
\b
は空の文字列にマッチし
|
は "または"を意味するので、以下のようにしてみましたが、うまくいきません。
^[\w\.\-]+@([\w\-]+\.)+[a-zA-Z]+$|\b
どのように解決するのですか?
一致させるには
pattern
または空の文字列にマッチさせるには
^$|pattern
説明
-
^
そして$
はそれぞれ文字列のアンカーの始まりと終わりです。 -
|
はオルタネートを表すのに使われ、例えばthis|that
.
参考文献
- 正規表現.info/アンカー そして オルタネート
について
\b
\b
は、ほとんどの場合、"word boundary" アンカーです。これはゼロ幅のマッチ、つまり空の文字列ですが、以下の文字列にのみマッチします。
非常に特定の場所
つまり、単語の境界でマッチします。
つまり
\b
が配置されている。
-
連続した
\w
と\W
(どちらかの順序)になります。- 単語文字と非単語文字の間
-
の間
^
と\w
-
で始まる場合は、文字列の先頭、つまり
\w
-
で始まる場合は、文字列の先頭、つまり
-
の間
\w
と$
-
で終わる場合は、文字列の末尾で
\w
-
で終わる場合は、文字列の末尾で
参考文献
メールアドレスのマッチングに正規表現を使用することについて
仕様によっては些細なことです。
関連する質問
関連
-
[解決済み] 正規表現で変数を使うには?
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] JavaScriptで空文字列/未定義文字列/null文字列をチェックするにはどうすればよいですか?
-
[解決済み] 文字列が空かどうかを確認する方法は?
-
[解決済み] JavaScriptの正規表現でマッチしたグループにアクセスするにはどうすればよいですか?
-
[解決済み] 有効な正規表現を検出するための正規表現はありますか?
-
[解決済み] JSで文字列が正規表現にマッチするかどうかをチェックする
-
[解決済み] CodeMash 2012の'Wat'トークで言及された、この奇妙なJavaScriptの動作の説明とは?
-
[解決済み】HH:MMの時間形式をマッチングさせる正規表現
-
[解決済み] Chrome拡張機能:popup.htmlを強制終了させる
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 配列からオブジェクトを生成する
-
[解決済み] 文字列がすべて同じ部分文字列で構成されているかどうかを調べるにはどうすればよいですか?
-
[解決済み] reactのrender関数でdynamic hrefを作成するには?
-
[解決済み] アサインの左側にJavascriptのオブジェクトブラケット表記({ ナビゲーション } =)があります。
-
[解決済み] JavaScriptを使用してHTML要素に属性を追加/更新するには?
-
[解決済み] react-routerのハッシュフラグメントからクエリパラメータを取得する
-
[解決済み] ECMAScriptとは?
-
[解決済み] JSHintの'+'前の改行不良の説明
-
[解決済み] JavaScriptとLuaの微妙な違い [終了しました]
-
[解決済み] JavaScriptのArray.sort()メソッドでシャッフルするのは正しいのか?