テクノロジ系
正規表現の基本 — パターンで文字列を検索・置換する
導入
Webフォームで「メールアドレスの形式が正しくありません」と表示されたことはないでしょうか。その判定を陰で支えているのが正規表現です。文字列のパターンを記号で表現することで、検索・置換・入力チェックをシンプルに実現できます。
くわしく知ろう
正規表現(regular expression)とは、文字列のパターンを一定の記号で表す記法を指します。テキストエディタの検索や、プログラミング言語での文字列処理、入力バリデーションなど幅広い場面で活用されています。
代表的な記号として、まず「.」は任意の1文字に一致します。次に「*」は直前の文字や表現が0回以上繰り返すことを、「+」は1回以上繰り返すことを表します。「?」は0回または1回(省略可能)を意味します。
「[]」は文字クラスと呼ばれ、その中に含まれる文字のどれか1文字に一致します。たとえば「[abc]」はa・b・cのどれか1文字、「[0-9]」は0から9の数字1文字に一致します。「^」を先頭に置くと否定の意味になり「[^0-9]」は数字以外の文字を表します。
これらを組み合わせることで、たとえばメールアドレスの簡易チェック(文字列@文字列.文字列)や、電話番号の形式検証(数字とハイフンのパターン)などを実現できます。正規表現はITパスポートでは概念として問われることが多く、各記号の意味を大まかに押さえておくことが重要です。
具体例
たとえば「[0-9]+」は1桁以上の数字の並びに一致するパターンです。電話番号入力欄で数字以外が入力されていないかチェックする際などに使われます。また「.*」は任意の文字が0文字以上続くパターンを表し、検索条件のワイルドカードとして活用されます。
まとめ・試験ポイント
- 正規表現=文字列のパターンを記号で表す記法
- 「.」=任意の1文字、「*」=0回以上の繰り返し、「+」=1回以上の繰り返し
- 「[]」=文字クラス(いずれか1文字に一致)
- 用途=テキスト検索・置換・入力バリデーション
- 試験では「この正規表現が一致する文字列はどれか」という読み取り問題が出る
学習した内容を試験形式で確認しよう。ITパスポート入門試験100問に挑戦できます。
入門試験100問に挑戦する