这是我的数据:
@someDescription ID 1234_Reverse_4321 ...
@someDescription 1234_4321 ...
@someDescription ID 1234_4321 ...
我想从每一行中找出这些:
1234_Reverse_4321
1234_4321
我使用Perl,但我也熟悉bash。
我使用了这些数字,但实际上我的范围是 600-5000(但可能是 0-10,000)
如果在数据不可用时(第 2 行)使用空格统一格式化文件,我就不会遇到这个问题。
最好为此使用 awk:
awk 'NF>2 {print $3}' file
1234_Reverse_4321
1234_4321
1234_4321
纯粹的正则表达式:
/@\w+\s+(?:ID\s+)?(\w+)/g