【发布时间】:2018-02-08 17:32:53
【问题描述】:
我有一个有点像这样的大文本文件:
=?accession=P12345;=?position=999;
=?accession=Q19283;=?position=777;
=?accession=A918282;=?position=888;
我想提取accession= 和; 之间的术语,然后还要提取position= 和; 之间的术语
所以我得到:
P12345 999
Q19283 777
A918282 888
我需要在它们之间进行 grep 的字符串变得更加复杂,所以我想一个硬编码的解决方案。
我知道我可以采用“两个字符串之间的 grep”方法:
grep -Po 'accession= \K.*(?= ;)'
但我不知道如何从输入的同一行获取后续提取,以便与输出出现在同一行。
我真的不介意这是如何完成的,只要我可以从 linux 命令行调用它。
谢谢。
【问题讨论】:
-
如果您向我们展示的样本只是
a bit like您的真实数据,我们如何帮助您想出一个脚本来解析您的数据?这感觉就像我们要剥洋葱一段时间才能达到您的真正要求。