HELP!!!
Как из строчки : "5 minute input rate 10673000 bits/sec, 1408 packets/sec"
выдирать только 10673000
Помогите начиркайте regex. Буду благодарен
>HELP!!!
>Как из строчки : "5 minute input rate 10673000 bits/sec, 1408 packets/sec"
>
>выдирать только 10673000
>Помогите начиркайте regex. Буду благодарен[c0der@xxx ~]$ echo "5 minute input rate 10673000 bits/sec, 1408 packets/sec" | perl -pe 's|\d+ minute input rate (\d+) bits/sec, \d+ packets/sec|$1|'
10673000
>[c0der@xxx ~]$ echo "5 minute input rate 10673000 bits/sec, 1408 packets/sec" |
>perl -pe 's|\d+ minute input rate (\d+) bits/sec, \d+ packets/sec|$1|'
>10673000Спасибо !!! Работает !!
подскажите ссылку на хороший учебник ....
>подскажите ссылку на хороший учебник ....man perlretut
man perlre
>Спасибо !!! Работает !!
>подскажите ссылку на хороший учебник ....Дж. Фридл.
Регулярные выражения.
http://www.ozon.ru/context/detail/id/1379940/
>>HELP!!!
>>Как из строчки : "5 minute input rate 10673000 bits/sec, 1408 packets/sec"
>>
>>выдирать только 10673000
>>Помогите начиркайте regex. Буду благодарен
>
>[c0der@xxx ~]$ echo "5 minute input rate 10673000 bits/sec, 1408 packets/sec" |
>perl -pe 's|\d+ minute input rate (\d+) bits/sec, \d+ packets/sec|$1|'
>10673000$ echo "5 minute input rate 10673000 bits/sec, 1408 packets/sec" |awk '{print $5}'
так не проще?
>$ echo "5 minute input rate 10673000 bits/sec, 1408 packets/sec" |awk '{print
>$5}'
>так не проще?Или так:
set -- 5 minute input rate 10673000 bits/sec, 1408 packets/sec
echo $5
>так не проще?Может и проще, но тема про Perl (иначе я бы на sed предложил вариант)