ds data-processing preprocessing
まず結論
正規表現とは、「文字列の形式(パターン)を表現するためのルール」です。 DS検定では「このパターンは何を意味しているか」「どこまでを一致させるのか」を判断させる問題として問われることが多いです。
直感的な説明
正規表現は、データの形をチェックするための型紙のようなものです。
たとえば電話番号 123-4567
この「3桁-4桁」という形を表現するのが正規表現です。
業務では、
入力フォームのチェック
CSVデータの前処理
ログデータの抽出
などで使われます。
DS検定では「この正規表現は何を許可しているか?」と問われることが多く、 意味を読めるかどうかがポイントになります。
定義・仕組み
正規表現は、記号を使って文字列のパターンを表現します。
例:
^\d{3}-\d{4}$
それぞれの意味は次の通りです。
^ :文字列の先頭
\d :数字1文字
{3} :3回繰り返す
:ハイフン
$ :文字列の末尾
つまりこれは、
「先頭から、数字3桁、ハイフン、数字4桁で終わる」
という意味になります。
ここで重要なのは、
正規表現は「形式」をチェックするものであり、「意味の正しさ」までは保証しない
という点です。
たとえば 999-0000 も形式としては正しいため一致します。
どんな場面で使う?
使う場面
電話番号・郵便番号の形式チェック
メールアドレスの簡易チェック
特定のパターンの文字列抽出
データ前処理で不要データを除外
使うと誤解しやすい場面
「正しい日付かどうか」まで判定できると思い込む
「完全一致」なのか「部分一致」なのかを区別していない
DS検定では、「この正規表現はどの文字列と一致するか」と問われることが多いです。
どこからどこまでを対象にしているかを必ず確認します。
よくある誤解・混同
① ^ と $ を忘れる
\d{3}-\d{4}
これだけだと、
abc123-4567xyz
のような文字列にも一致します。
選択肢では「完全一致している」と書かれていたら注意です。
② . の意味を誤解する
. は「任意の1文字」です。
^…-….$
これは数字でなくても通ってしまいます。
DS検定では 「. は数字を意味する」 といった誤った説明が選択肢に出ることがあります。
③ {3} と {3,} の違い
{3} → ちょうど3回
{3,} → 3回以上
この違いを読めるかどうかも、よく問われます。
まとめ(試験直前用)
正規表現は「文字列の形式」を表すルール
^ と $ があるかで「完全一致」かどうかが変わる
. は「任意の1文字」であり、数字ではない
正規表現は形式を表すルールであり、意味の正しさまでは保証しない
DS検定では「どの文字列に一致するか」を具体的に読めることが大切
🔗 関連記事
- アノテーションとは?(AI学習データを作る重要な作業)【DS検定】
- バッチ処理とストリーム処理の違いとは?【DS検定リテラシー】
- データ拡張(Data Augmentation)とは?画像AIの学習データを増やす方法【DS検定】
- データ抽出と集計の違いとは?(SQL・BIで混同しやすい操作)【DS検定】
- データトランスフォーメーションとは?(非構造化データの変換)【DS検定】