perl regex命令行-如何获取匹配项而不是替换

时间:2019-03-22 16:43:20

标签: regex perl command-line

我是perl的新手。而且我想找到匹配项,而不是替换文本。

我到底有没有要使用一行命令来完成?

我正在使用的示例文本: text.txt

sample1 other sample2 other

我正在使用的命令:

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

我希望获得以下输出(使用一行命令):

sample1
sample2

我在Windows PowerShell中使用Strawberry Perl。

1 个答案:

答案 0 :(得分:1)

这应该有效:

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

我认为这看起来更好:

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