2013-06-02 59 views
0

的我有條目的文件等正則表達式不提取所述第二組數

ABC DEF GHI 1234<set 1 of numbers>   AT <set 2 of numbers, can have decimal point> 

我使用以下代碼來從每一行中提取2臺數的。

if($_=~/ABC.*1234([0-9]+).*AT.*([0-9]+)/) 
{ 
    print $_, "\n"; 
    print 1st number = ", $1 , "\t 2nd number = ", $2 , "\n"; 
} 

雖然我能看到第一個數字的正確值,但第二個數值總是顯示爲0。

爲什麼我沒有得到第二個數字?

回答

3
if(/ABC.*1234([0-9]+)\s*AT\s*([0-9.]+)/) 
+1

+1對可能的小數有很好的捕獲。 – Jerry

+0

當降價處理器沒有吞下時,更容易看到需求 – user1937198