-2

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

chr8    +       120807654       121847348       Cdh13   unnamed (-46405)                                                                
chr2    +       167514414       167515918       Cebpb   unnamed (+3335), unnamed (+89835)

我想使用最后一列括号中的数字并稍后进行一些计算。现在我无法使用正则表达式来获取所有这些数字,因为有些行只有 1 个“未命名(###)”,而有些行有超过 1 个。我该如何处理?

谢谢!

4

1 回答 1

1

尝试这个:

while (<STDIN>) {
    @matches = m/\(([+-]\d+)\)/g;
    print join(",", @matches) . "\n";
}

/g将匹配所有单词,因此您的所有数字都将在@matches数组中。

于 2013-05-10T21:01:16.090 回答