URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 91677
[ Назад ]

Исходное сообщение
"как найти строку содержащую только цифры."

Отправлено ikit , 31-Май-11 13:01 
на linux'е на bash в текстового файла file.txt
пробую grep -e [0-9]{1,256} file.txt
но результат не тот что надо. что я делаю не так?

Содержание

Сообщения в этом обсуждении
"как найти строку содержащую только цифры."
Отправлено koblin , 31-Май-11 13:23 
> на linux'е на bash в текстового файла file.txt
> пробую grep -e [0-9]{1,256} file.txt
> но результат не тот что надо. что я делаю не так?

может так?! grep -E '^[0-9]*$' file


"как найти строку содержащую только цифры."
Отправлено Andrey Mitrofanov , 31-Май-11 13:32 
> в текстового файла
> что я делаю не так?

Кроме опечаток? Используешь интенеты вместо головы.


"как найти строку содержащую только цифры."
Отправлено ikit , 31-Май-11 13:41 
>> в текстового файла
>> что я делаю не так?
> Кроме опечаток? Используешь интенеты вместо головы.

знаете, иногда хочется не только готовые "велосипедные" решения, а понять логику простейших выражений. для этого общение весьма полезно. но да, критику принял.


"как найти строку содержащую только цифры."
Отправлено ikit , 31-Май-11 13:43 
> на linux'е на bash в текстового файла file.txt
> пробую grep -e [0-9]{1,256} file.txt
> но результат не тот что надо. что я делаю не так?

спасибо всем откликнувшимся, ответ нашелся, если интересно вот он:
egrep -v '[[:alpha:][:blank:][:cntrl:][:punct:][:space:]]|^$'


"как найти строку содержащую только цифры."
Отправлено lavr , 31-Май-11 13:54 
>> на linux'е на bash в текстового файла file.txt
>> пробую grep -e [0-9]{1,256} file.txt
>> но результат не тот что надо. что я делаю не так?
> спасибо всем откликнувшимся, ответ нашелся, если интересно вот он:
> egrep -v '[[:alpha:][:blank:][:cntrl:][:punct:][:space:]]|^$'

egrep -E '^[[:digit:]]*$'
или как уже советовали grep -E '^[0-9]*$'
не проще?


"как найти строку содержащую только цифры."
Отправлено Andrey Mitrofanov , 31-Май-11 13:57 
> egrep -E '^[[:digit:]]*$'
> или как уже советовали grep -E '^[0-9]*$'
> не проще?

Он ещё "ищет логику". Ж)
И кста, пустую строку он исключает, поэтому * заменяем на +.


"как найти строку содержащую только цифры."
Отправлено ikit , 31-Май-11 14:05 
>>> на linux'е на bash в текстового файла file.txt
>>> пробую grep -e [0-9]{1,256} file.txt
>>> но результат не тот что надо. что я делаю не так?
>> спасибо всем откликнувшимся, ответ нашелся, если интересно вот он:
>> egrep -v '[[:alpha:][:blank:][:cntrl:][:punct:][:space:]]|^$'
> egrep -E '^[[:digit:]]*$'
> или как уже советовали grep -E '^[0-9]*$'
> не проще?

проще, спасибо за совет