繁体   English   中英

一行中多次使用相同模式的正则表达式

[英]Regex for The Same Pattern Multiple Times in One Line

我正在寻找的模式是这样的:

TXT.*\.txt

该模式可以在任何给定的行中多次出现。 我想要提取模式的每个实例,或者使用sed(或任何东西,真的)删除围绕每个实例的文本。

谢谢!

你可以使用Perl作为:

$ cat file
foo TXT1.txt bar TXT2.txt baz
foo TXT3.txt bar TXT4.txt baz

$ perl -ne 'print "$1\n" while(/(TXT.*?\.txt)/g)' file
TXT1.txt
TXT2.txt
TXT3.txt
TXT4.txt
$ 

您可以使用grep作为:

grep -o 'TXT[^.]*\.txt' file

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM