Regex Perl:如何匹配可变数量的模式

Regex Perl:如何匹配可变数量的模式,regex,perl,Regex,Perl,我想从文件中的列中获取一些信息,该列可能包含我感兴趣的可变数量的实例,请参见下面的一个简单示例 chr8 + 120807654 121847348 Cdh13 unnamed (-46405) chr2 + 167514414 167515918 Cebpb unnamed (

我想从文件中的列中获取一些信息,该列可能包含我感兴趣的可变数量的实例,请参见下面的一个简单示例

chr8    +       120807654       121847348       Cdh13   unnamed (-46405)                                                                
chr2    +       167514414       167515918       Cebpb   unnamed (+3335), unnamed (+89835)
我想使用最后一列括号中的数字,然后进行一些计算。现在我很难用正则表达式把所有这些数字都取出来,因为有些行只有1个“unnamed(#####)),而有些行有1个以上。我该怎么治疗

谢谢

试试这个:

while (<STDIN>) {
    @matches = m/\(([+-]\d+)\)/g;
    print join(",", @matches) . "\n";
}
while(){
@匹配项=m/\(([+-]\d+\)/g;
打印联接(“,”,@matches)。“\n”;
}

/g
将匹配所有单词,因此您的所有号码都将位于
@matches
数组中

我想我可以读取最后一列,根据逗号的大小将其拆分,然后处理每个模式