LoginSignup
1
0

More than 1 year has passed since last update.

正規表現の活用法を学ぶ

Posted at

はじめに

正規表現は活用できると文章処理作業の効率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 は
わかりにくい表現を可視化してくれます。
ぜひ一度使ってみてはいかがでしょうか。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0