最終更新日:2026年8月16日
ds data-processing preprocessing
DS検定トップ
> 日付形式の正規表現とは?形式チェックと妥当性の違い【DS検定】
まず結論
日付の正規表現は、日付の「形式」を確認するためのパターンです。
DS検定では、形式チェックと妥当性チェックは別だと判断できることが重要です。
直感的な説明
例えば、次の文字列を考えます。
2025-04-01
見た目は「4桁-2桁-2桁」です。
一方、次も形だけなら同じです。
2025-99-99
このため、正規表現だけでは実在する日付かどうかまでは分からない場合があります。
定義・仕組み
YYYY-MM-DD形式を確認する簡単な正規表現は次のように書けます。
^\d{4}-\d{2}-\d{2}$
| 表記 | 意味 |
|---|---|
^ |
文字列の先頭 |
\d{4} |
数字4桁 |
- |
ハイフン |
\d{2} |
数字2桁 |
$ |
文字列の末尾 |
つまり、文字列全体が「4桁-2桁-2桁」になっているかを確認しています。
形式が合っても妥当とは限らない
次のような文字列も、この簡単な正規表現には一致します。
2025-13-012025-12-40
\d{2} は2桁であることを表すだけで、「01〜12」や「01〜31」という意味ではありません。
どんな場面で使う?
使う場面
- CSVデータの前処理
- 入力フォームの形式チェック
- ログデータから日付らしい文字列を抽出
誤解しやすい場面
- 正しい日付だけを抽出できると思う
- 月や日の範囲まで確認していると思う
実務では、形式チェックの後に日付型へ変換するなど、別の妥当性確認を行うことがあります。
よくある誤解・混同
① 形式チェック = 妥当性チェック
誤りです。
形が合っていることと、実在する日付であることは別です。
② \d{2} は 01〜12 を意味する
誤りです。
\d{2} は単に数字2桁です。
③ 完全一致と部分一致を混同する
^ と $ がなければ、文字列の一部分だけに一致する場合があります。
完全一致を判断するときは、先頭・末尾の指定を見るのがポイントです。
まとめ(試験直前用)
- 日付の正規表現 = 形式チェック
\d{2}= 数字2桁であり、月日の範囲ではない- 形式と妥当性は別
^と$= 完全一致を見る判断材料
DS検定では、「その正規表現が何を保証していないか」を考えると選択肢を切りやすくなります。
🔗 関連記事
- アノテーションとは?AI学習データの品質を決める作業【DS検定】
- バッチ処理とストリーム処理の違いとは?リアルタイム性で切り分ける【DS検定】
- データ拡張(Data Augmentation)とは?画像AIの学習データを増やす方法【DS検定】
- データ抽出と集計の違いとは?(SQL・BIで混同しやすい操作)【DS検定】
- データトランスフォーメーションとは?(非構造化データの変換)【DS検定】