2011-11-17 51 views
0

我試圖減少我所擁有的kml文件的文件大小。使用正則表達式簡化KML中的點

爲多邊形的座標是這個準確:

-113.52106535153605,53.912817815321503,0. 

我不是很好的正則表達式,但我認爲這將有可能寫一個逗號之前選擇八個字符。我運行一個搜索和替換這樣的結果將是

-113.521065,53.9128178,0. 

任何正則表達式的專家在那裏想這是可能的嗎?

+0

您想使用哪種語言或哪種工具? – stema

回答

0

這是可能的工作。用昏迷代替8個字符和昏迷:s /(。{8}),/,/ g;

echo「-113.52106535153605,53.912817815321503,0」。 | SED的/ \ {8 \},/,/。'

這樣你就可以貓你有這樣的sed命令文件:

貓file.kml | SED的/ \ {8 \},/,/'> newfile.kml

0

我只需要做同樣的事情。這是perl而不是sed,但它會查找一串八個不間斷的數字,然後在沒有任何數據的情況下替換任意數量的不間斷數字。它效果很好。

cat originalfile.kml | perl -pe's /(?< = \ d {8})\ d * // g'> shortenedfile.kml