Date: Wed, 04 Nov 2015 13:53:18 -0700 From: Ian Lepore <ian@freebsd.org> To: rank1seeker@gmail.com, hackers@freebsd.org Subject: Re: awk's curly braces (regex) Message-ID: <1446670398.91534.358.camel@freebsd.org> In-Reply-To: <20151104211008.00006c16@gmail.com> References: <20151104211008.00006c16@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 2015-11-04 at 21:10 +0100, rank1seeker@gmail.com wrote: > 10.2-RELEASE-p6 > > # awk --version > awk version 20121220 (FreeBSD) > > # echo 2015 | awk '/^[0-9]/ {print}' > Prints '2015' > > # echo 2015 | awk '/^[0-9]{4}/ {print}' > Won't > > Why range/interval specified via curly braces doesn't work. > PS: Yes I've tried escaping it with backslahes and double backslahes, > nada! > > man pages: > -- > Regular expressions are as in egrep; see grep(1). > -- For what it's worth, the manpage on a linux system I checked also says the regex is like egrep, but then it points out that one difference is "interval expressions" (curly brace stuff) which it says are "likely to break old awk programs" so they're only enabled if --posix or --re -interval options are given. Our awk doesn't seem to support those options. I guess our awk might also avoid the interval expressions out of caution for breaking old programs; maybe we need to add the options to enable them, like gnu awk has. -- Ian
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1446670398.91534.358.camel>