首页 > 解决方案 > 具有模式匹配的子集行

问题描述

我有一个制表符分隔的文件,其列格式如下:

cat    1/1:127:59:0:1    0/0:.:78:0:.,.,.:1    0/0:.:64:0:.,.,.:     
cat    0/0:.:53:0:.,.,.:1    0/1:.:53:0:.,.,.:0    0/0:.:57:0:.,.,.:1
dog    1/0:127:59:0:1    1/1:.:78:0:.,.,.:1    0/0:.:64:0:.,.,.:1

我需要对具有一列或多列以“1/1:”开头并以“:1”结尾的所有行进行子集化,给出以下文件:

cat    1/1:127:59:0:1    0/0:.:78:0:.,.,.:1    0/0:.:64:0:.,.,.:0
dog    1/0:127:59:0:1    1/1:.:78:0:.,.,.:1    0/0:.:64:0:.,.,.:1

我尝试过使用 grep 和正则表达式,但我似乎无法让它工作。

任何帮助将不胜感激!

注意。实际文件很大

标签: regexbashawkgrep

解决方案


你可以试试

^.+?\s1\/1.+

在 regex101.com 上查看演示


推荐阅读