我有一個巨大的文本數據文件(〜100MB),它是一串數據文件與各種標題信息,然後是一些數據列的串聯。這是問題。我想從每個這些數據集之前的標題信息中提取一個特定的數字,然後將其附加到數據中的另一列(並將數據寫入另一個文件)。Perl正則表達式匹配文本字符串和提取以下編號
,我想報頭信息的格式是恩:BGA 1
哪裏是我想要的,額外的數據列字BGA後#。它將是1到20000之間的一個數字。我可以編寫正則表達式來拉動單詞BGA,但我似乎無法弄清楚如何在數字之後獲取數字。
要添加額外的樂趣,在每個數據段TWICE中重複顯示文本「BGA 1」。
這是我到目前爲止,實際上不工作......我希望它至少打印「BGA」,每次遇到單詞BGA,但它不打印....任何幫助將不勝感激。
#!/usr/bin/perl
use strict;
use warnings;
my $file = 'alldata.txt';
open my $info, $file or die "Could not open $file: $!";
$_="";
while(my $line = <$info>){
if ($line eq "/BGA/"){
print <>,"\n";
}
}
close $file;