数字8桁は拾わず、日付3件だけ。regex101で「YYYY-MM-DD」を抽出した

机に置かれたスマートフォンと周辺機器のイメージ写真 便利ツール
イメージ写真。記事で紹介する実機・画面ではありません。写真:Unsplash(配布ページ) / Unsplash License

この記事のポイント

  • PCRE2で日付パターンを入力した
  • ハイフン付きの3件はすべて一致した
  • 20261004は一致対象にならなかった

サムネイルはイメージ写真。写真の配布元:Unsplash(利用許諾)。本文の画面は実際の操作時に撮影した。

regex101で日付パターンを入力し、ハイフン付きの日付3件だけが一致した画面
2026年10月4日、Windows版Chromeで検証。正規表現「\d{4}-\d{2}-\d{2}」はハイフン付き日付3件に一致し、数字だけの20261004には一致しなかった。
検証環境:2026年10月4日、Windows版Chromeでregex101を未ログインで使用。FlavorはPCRE2(PHP)、g・mフラグが有効な初期状態で確認した。

文章から日付だけを探したいとき、目で追うより正規表現を試す方が速い。ただし式が合っているかは、実際の入力例と外したい例を同じ画面へ置いて確かめる必要がある。

今回は正規表現欄へ\d{4}-\d{2}-\d{2}を入力し、本文へ3つの日付と数字だけの番号を置いた。結果は3 matchesで、2026-10-04、2026-10-12、2026-11-01の3件だけが選ばれた。同じ8桁でもハイフンのない20261004は拾わなかった。

再現手順

  1. regex101を開く。
  2. Regular Expressionへ\d{4}-\d{2}-\d{2}を入れる。
  3. Input欄へ日付を含む文章を貼る。
  4. 上部のmatch数と右側のMatch Informationを見る。
  5. 拾いたくない形式も混ぜ、誤って一致しないか確認する。

この式は「実在する日付」までは判定しない

\d{4}は数字4文字、\d{2}は数字2文字という形を示す。したがって「2026-99-99」のような文字列も形だけなら一致する。ログから候補を抜き出す用途には便利だが、暦として正しいかは日付処理側で別に確認する必要がある。

regex101は選んだエンジンに応じて説明と一致位置を表示する。実際に使うプログラミング言語とFlavorを合わせると、環境差を減らせる。

出典・確認先

コメント

タイトルとURLをコピーしました