LINUX.ORG.RU

Помогите с регэкспом


0

0
Есть строка, содержащая 10 слов, раделенных пробелами (в начале строки также может быть пробел, а может и не быть). Нужно вытащить цифры из 7-го по счёту слова.
anonymous
Если я правильно понял, что ты хочешь - то вот решение на Ruby:

str.split[6].split('').grep(/\d/).join

Hjorn
()
Ответ на: комментарий от Hjorn
спасибо, принцип понятен, но мне бы это стандартными средствами решить (баш или перл/пайтон на худой конец)
anonymous
()
Ответ на: комментарий от anonymous
cat hhh | perl -e 'while(<STDIN>){/[\w+\s]{6}\D*(\d*)/;print $1;}'
Deleted
()
Ответ на: комментарий от anonymous
Не совсем правильно работает, но я понял google perl regular expressions
anonymous
()
Ответ на: комментарий от anonymous
а можешь написать без split, т.е. решить задачу в один регексп, который хоть в перл хоть в javascript можно будет поставить?
anonymous
()
Ответ на: комментарий от anonymous
echo "one two three four five six seven123withdigits nine ten" | \
  perl -ne '/^s*(?:\S+\s+){6}\S*?(\d+)/ && print "$1\n"';
123
anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.