はじめに
正規表現は活用できると文章処理作業の効率UPにつながります!
基本的な正規表現を身に付けて
正規表現を活用していきましょう!
正規表現の基礎
下記、携帯番号の正規表現を例に
それぞれの働きを見ていきましょう!
携帯番号の正規表現 ^0[789]0-\d{4}-\d{4}$
^:ハット…直後の文字が行の先頭であることを指定したいときに使用
[]:角括弧…角括弧内のいずれかの文字一文字を表す
\d:バックスラd…半角数字一文字
{n}:波括弧…直前のパターンをn回繰り返す
$:ダラー…直前の文字が行の末尾であることを指定したいときに使用
実際に正規表現を使ってみよう!
テキストエディタ(例)
sample.txt
suzuki 080-1111-1111
sato 070-2222-2222
yasuda 090-3333-3333
080-4444-4444 tanaka
070-5555-5555 yamada
090-6666-6666 tagawa
1.grep
コマンドを使用して、携帯番号を抽出を試みますが…
# grep -P '^0[789]0-\d{4}-\d{4}$' sample.txt
2.抽出結果なし
#
理由はsample.txt
の中身は、行の先頭も末尾も数字4桁の行がないため
指定した正規表現ではヒットするものがありませんでした。
3.再度、正規表現を修正してコマンド実行 (先頭の「^」削除)
# grep -P '0[789]0-\d{4}-\d{4}$' sample.txt
4.抽出成功!
suzuki 080-1111-1111
sato 070-2222-2222
yasuda 090-3333-3333
末尾が数字4桁の3行のみ抽出に成功しました。
正規表現可視化ツール Regulex
イメージしにくい正規表現を可視化するツールです。
Regulex は
わかりにくい表現を可視化してくれます。
ぜひ一度使ってみてはいかがでしょうか。