On Wed, Aug 16, 2017 at 10:14:46AM +0900, KIRIYAMA Kazuhiko wrote: > admin_at_tbedfpc:~/tmp % ll > total 12 > -rw-r--r-- 1 admin admin 235 Aug 16 10:01 regex-1.sh > -rw-r--r-- 1 admin admin 236 Aug 16 10:01 regex-2.sh > -rw-r--r-- 1 admin admin 260 Aug 16 10:01 regex.sh > admin_at_tbedfpc:~/tmp % cat regex.sh > #!/bin/sh > > data='1 2 3 4 5 6 > 1 2 3 4 5 > 1 2 3 4 5 6 > 1 2 3 4 5 6 > 1 2 3 4 > 1 2 3' > > IFS=$'\n' > for datum in $data; do > if echo "$datum" | egrep -q '^([^[:space:]]+[[:space:]]+){5}'; then > echo "$datum" > else > echo "Not 6 components! : \"$datum\"" > fi > done > admin_at_tbedfpc:~/tmp % sh ./regex.sh > 1 2 3 4 5 6 > Not 6 components! : "1 2 3 4 5" > 1 2 3 4 5 6 > 1 2 3 4 5 6 > Not 6 components! : "1 2 3 4" > Not 6 components! : "1 2 3" > admin_at_tbedfpc:~/tmp % cat regex-1.sh > #!/bin/sh > > _f_awk=' > { > if ($0 ~ /^([^[:space:]]+[[:space:]]+){5}/) { > print $0 > } else { > print "Not 6 components! : \"" $0 "\"" > } > }' > > data='1 2 3 4 5 6 > 1 2 3 4 5 > 1 2 3 4 5 6 > 1 2 3 4 5 6 > 1 2 3 4 > 1 2 3' > > echo "$data" | awk "$_f_awk" > admin_at_tbedfpc:~/tmp % sh ./regex-1.sh > Not 6 components! : "1 2 3 4 5 6" > Not 6 components! : "1 2 3 4 5" > Not 6 components! : "1 2 3 4 5 6" > Not 6 components! : "1 2 3 4 5 6" > Not 6 components! : "1 2 3 4" > Not 6 components! : "1 2 3" > admin_at_tbedfpc:~/tmp % cat regex-2.sh > #!/bin/sh > > _f_awk=' > { > if ($0 ~ /^([^[:space:]]+[[:space:]]+){5}/) { > print $0 > } else { > print "Not 6 components! : \"" $0 "\"" > } > }' > > data='1 2 3 4 5 6 > 1 2 3 4 5 > 1 2 3 4 5 6 > 1 2 3 4 5 6 > 1 2 3 4 > 1 2 3' > > echo "$data" | gawk "$_f_awk" > admin_at_tbedfpc:~/tmp % sh ./regex-2.sh > 1 2 3 4 5 6 > Not 6 components! : "1 2 3 4 5" > 1 2 3 4 5 6 > 1 2 3 4 5 6 > Not 6 components! : "1 2 3 4" > Not 6 components! : "1 2 3" > admin_at_tbedfpc:~/tmp % uname -a > FreeBSD tbedfpc 12.0-CURRENT FreeBSD 12.0-CURRENT #0 r321597: Thu Jul 27 12:30:57 UTC 2017 root_at_tbedfc:/usr/obj/usr/src/sys/GENERIC amd64 > admin_at_tbedfpc:~/tmp % pkg info -aI|grep gawk > gawk-4.1.4_1 GNU version of Awk > admin_at_tbedfpc:~/tmp % > > > Is this the BSD awk (/usr/bin/awk) bug ? > > --- > KIRIYAMA Kazuhiko > _______________________________________________ > freebsd-current_at_freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org" Hello Kiriyama-san, The man page awk(1) says that {m,n} matcning is not supported. The "{5}" part matches the literal sequence of characters it's made out of, I suppose. Someone please correct me if I'm wrong. Regards, TomoyaReceived on Tue Aug 15 2017 - 23:43:08 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:12 UTC