2016-12-06 20 views
-1

私は下のテキストのチャンクが含まれている大きなレポートがあります。より簡潔な正規表現

$S Cal V1 
1 1.000  353.2 20.0 47 
2 4.000  179.4 19.9 95 
3 8.000  -51.5 20.0 35 

を私は何を取得しようとしていることは2番目の列に数字を引き出すための3つの別々の式です。ヘッダー($ S Cal V1)は同じままですが、最初の列の数字を除くすべての数字は変更される可能性があります。

これは私が現在持っている混乱です。私は凝縮することができるかどうかを知っているが、私は何かよりきれいなものも望んでいた。

\$S Cal V1\n1\s*(\d+\.\d+) 
\$S Cal V1\n1\s*\d+\.\d+\s*\d+\.\d+\s\d+\.\d+\s*\d+\n2\s*(\d+\.\d+) 
\$S Cal V1\n1\s*\d+\.\d+\s*\d+\.\d+\s\d+\.\d+\s*\d+\n2\s*\d+\.\d+\s*\d+\.\d+\s\d+\.\d+\s*\d+\n3\s*(\d+\.\d+) 

いずれの感想もおありですか?

+0

ただ、最後の式を使用して、各行の第二数の周りにキャプチャグループを置きます。それから3つの数字を一度に得ることができます。 – Barmar

+1

あなたはどのツール/言語を使用していますか? –

+0

残念ながら私が使用しているソフトウェアには3つの別個の表現が必要です。これは、計測器から情報を取得するための実験室ソフトウェアです。 – macaday

答えて

0

データの精度は標準であるようです。

use\d\.\d{3} //cleverer :)

関連する問題