正则表达式量词错误

时间:2015-12-15 06:55:19

标签: regex perl text replace sed

我正在尝试替换所有出现的

**********

在带有

的大型文本文件中
 (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.

期待一些帮助。

1 个答案:

答案 0 :(得分:5)

*是正则表达式中的特殊字符。您必须将其转义才能匹配文字{10}字符。您还可以使用重复量词perl -i.bak -p -e 's/\*{10}/ nan /g' RayMet_140529.ray_paths 来避免重复该字符十次。

{{1}}