FC2ブログ

拡張正規表現と egrep その2

引き続き、拡張正規表現 egrep についてです

今回は、会員番号で検索するというのをやってみます

使用するファイルは
costomer.txt
です

内容は
1:山田太郎:男:43:東京
2:井上直子:女:19:埼玉
3:山本真一:男:43:福岡
4:千葉信夫:男:16:東京
5:秋山敬一郎:男:44:秋田

101:藤本信:男:40:東京
102:加藤純子:女:35:千葉
103:福岡勲:男:41:香川
104:桂井昭宏:男:53:福岡
となっています

それでは、会員番号3桁のところだけを調べます

egrep "^[0-9]{3}:" costomer.txt
これで

101:藤本信:男:40:東京
102:加藤純子:女:35:千葉
103:福岡勲:男:41:香川
104:桂井昭宏:男:53:福岡

となります
まず、最初の^で行頭を意味し
次の [0-9] で 0~9まで
そして {3} で3回繰り返す

つまり、100~999までになります


また、ゾロ目の数値だけを取り出すこともできます

今回は
年齢のフィールドを対象にして年齢がゾロ目の人を表示します

ゾロ目を表示するには、
文字列を()で囲ってグループ化し
さらに
\1 を使って後方参照します
後方参照は \1 を使ってのグループ呼び出しです

egrep ":([0-9])\1" costomer.txt
を実行すると
5:秋山敬一郎:男:44:秋田
となります

この
([0-9])\1
の部分がゾロ目を意味しています


スポンサーサイト



テーマ : Linux
ジャンル : コンピュータ

コメント

非公開コメント

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック