Командная строка Perl Regex - как получить совпадения вместо замены - PullRequest
0 голосов
/ 22 марта 2019

Я новичок в Perl.И я хотел бы получить совпадения, вместо этого заменив текст.

Я там все равно выполнил это, используя команду одной строки?

Образец текста, который я использую: text.txt

sample1 other sample2 other

Команда, которую я использую:

perl -0777 -pe 's/sample\d/changed/gs' text.txt

Я хотел бы получить следующий вывод (используя одну строковую команду):

sample1
sample2

Я использую клубничный Perl в WindowsPowerShell.

1 Ответ

1 голос
/ 22 марта 2019

Это должно работать:

perl -ne "while(/(sample\d)/g){print \"$1\n\";}" text.txt

Это выглядит лучше, я думаю:

perl -lne "while(/(sample\d)/g){print $1;}" text.txt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...