2015-12-15 104 views
0

我試圖用正則表達式量詞錯誤

(space)nan(space) 

(空格字符),以取代

********** 

所有出現在一個大的文本文件。圖形文本編輯器不能使用,因爲文本文件的大小太大。在很容易地替換這個之前,我還想知道在我的文件中出現了多少次「**********」。有什麼更好的方法來做到這一點?

我想這(這很容易替換字符串),但得到了一些錯誤:

perl -i.bak -p -e 's{**********}{ nan }g' RayMet_140529.ray_paths 

錯誤:

Quantifier follows nothing in regex; marked by <-- HERE in m/* <-- HERE *********/ at -e line 1. 

期待一些幫助。

回答

5

*是正則表達式模式中的特殊字符。您必須將其轉義才能匹配文字*字符。您也可以使用重複量詞{10}以避免不得不重複該字符十次。

perl -i.bak -p -e 's/\*{10}/ nan /g' RayMet_140529.ray_paths