0

以下は私の入力ファイルです:

sample.txt:

3"
6-position
7' 4" to 10' 3-1/2"
4.8"
Adjustable from 99" to 111" - max 148

出力では、3つだけ必要です。

output.txt:

3
4.8

したがって、基本的にはシンボルの数値を出力する必要があり"、他の非数値テキストは完全に削除する必要があります。

これを で実装しようとしましsedたが、目的の結果を得ることができませんでした。

UNIXでこれを達成する方法はありますか?

4

4 に答える 4

1

awk は、このタイプのタスクを実行するのにより適しています。

awk '/^ *[0-9]*(\.[0-9]+)?" *$/{sub(/"/, ""); print}' inFile

出力:

3
4.8
于 2013-05-11T21:11:37.397 に答える
1
于 2013-05-11T20:28:42.553 に答える
0

これはうまくいくかもしれません(GNU sed):

sed '/^[0-9.]\+"/!d;s/".*//' file
于 2013-05-11T23:20:06.090 に答える