Hi,

or in perl :)

If there is other data in front
| perl -ne 'if (<> =~ /(?<!\w)(313[0-9]{4})(?![0-9])/) { print "$1\n";}'

otherwise
| perl -ne 'print if /^313[0-9]{4}(?![0-9])/'



On 15 January 2014 13:45, <pe...@chubb.wattle.id.au> wrote:

> >>>>> "lists" == lists  <li...@sbt.net.au> writes:
>
> lists> I have a shell script that gets a web page, after around half
> lists> dozen sed/awk one liners I end up with like[1]:
>
> lists> I would like to extract all the 7 digit numeric values,
> lists> currently starting with '313....', to use them further in the
> lists> script
>
> Why not just something like:
>     sed  's/[^0-9]*\(313[0-9][0-9][0-9][0-9]\)[^0-9]*/\n\1\n/g'  |
>     sed -n '/^313[0-9][0-9][0-9][0-9]$/p'
>
> This first splits out 7-digit numbers starting 313 into a line on
> their own, then prints just those lines.
>
> Peter C
> --
> SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/
> Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html
>



-- 
Darragh Bailey
"Nothing is foolproof to a sufficiently talented fool"
-- 
SLUG - Sydney Linux User's Group Mailing List - http://slug.org.au/
Subscription info and FAQs: http://slug.org.au/faq/mailinglists.html

Reply via email to