* 直前の表現が0回以上繰り返し
aw*の正規表現を試してみます。
例えば、下記のin.txtがあったとします。
$ cat in.txt k ak awk awwk awwwk awwwwk
下記がサンプルコードになります。
$ cat sample.sh #!/bin/sh cat in.txt | awk ' { match($0, /aw*/) print substr($0, RSTART, RLENGTH) } '
下記が実行結果になります。
$ ./sample.sh a aw aww awww awwww
+ 直前の表現が1回以上繰り返し
aw+の正規表現を試してみます。
下記がサンプルコードになります。
$ cat sample2.sh #!/bin/sh cat in.txt | awk ' { match($0, /aw+/) print substr($0, RSTART, RLENGTH) } '
下記が実行結果になります。
$ ./sample2.sh aw aww awww awwww
? 直前の表現が0 or 1回マッチ
aw?の正規表現を試してみます。
下記がサンプルコードになります。
$ cat sample3.sh #!/bin/sh cat in.txt | awk ' { match($0, /aw?/) print substr($0, RSTART, RLENGTH) } '
下記が実行結果になります。
$ ./sample3.sh a aw aw aw aw
{n} 直前の表現がn回繰り返し
aw{2}の正規表現を試してみます。
下記がサンプルコードになります。
$ cat sample4.sh #!/bin/sh cat in.txt | awk ' { match($0, /aw{2}/) print substr($0, RSTART, RLENGTH) } '
下記が実行結果になります。
$ ./sample4.sh aww aww aww
{n,} 直前の表現がn回以上繰り返し
aw{2,}の正規表現を試してみます。
下記がサンプルコードになります。
$ cat sample5.sh #!/bin/sh cat in.txt | awk ' { match($0, /aw{2,}/) print substr($0, RSTART, RLENGTH) } '
下記が実行結果になります。
$ ./sample5.sh aww awww awwww
{n,m} 直前の表現がn~m回繰り返し
aw{1,3}の正規表現を試してみます。
下記がサンプルコードになります。
$ cat sample6.sh #!/bin/sh cat in.txt | awk ' { match($0, /aw{1,3}/) print substr($0, RSTART, RLENGTH) } '
下記が実行結果になります。
$ ./sample6.sh aw aww awww awww