0
我有一個數據文件。Perl一行代碼提取並彙總文件中的數字
文件:
Rows: 2
...
...
Rows: 3
的命令來搜索 '行'。
perl -ne 'while (/Rows\:/gi) { s/([.]*Rows :)([.]*)/$2/i, s/^ *//; print }'`
給出:
2
3
我要總結的值,並給出一個結果作爲5(2 + 3)。
請幫忙。
我有一個數據文件。Perl一行代碼提取並彙總文件中的數字
文件:
Rows: 2
...
...
Rows: 3
的命令來搜索 '行'。
perl -ne 'while (/Rows\:/gi) { s/([.]*Rows :)([.]*)/$2/i, s/^ *//; print }'`
給出:
2
3
我要總結的值,並給出一個結果作爲5(2 + 3)。
請幫忙。
的-n
標誌放while循環給你,這樣你就不會需要循環:
perl -lne '$s += $1 if /^Rows:\s*(\d+)/; END{print $s}' input
沒有,'-l'標誌處理換行符('chomp's和套'$ \' )。 '-n'標誌添加一個while循環。 – TLP
OP正在循環正則表達式 –
@TLP,謝謝修復它 – perreal