正则表达式量词错误

sup*_*mum 0 regex perl text replace sed

我试图替换所有出现的

**********
Run Code Online (Sandbox Code Playgroud)

在一个大的文本文件中

 (space)nan(space)
Run Code Online (Sandbox Code Playgroud)

(空间角色).无法使用图形文本编辑器,因为文本文件的大小太大.在轻易替换之前我还想知道在我的文件中出现了多少次"**********".有什么更好的方法呢?

我试过这个(很容易替换字符串),但是得到了一些错误:

perl -i.bak -p -e 's{**********}{ nan }g' RayMet_140529.ray_paths
Run Code Online (Sandbox Code Playgroud)

错误:

Quantifier follows nothing in regex; marked by <-- HERE in m/* <-- HERE *********/ at -e line 1.
Run Code Online (Sandbox Code Playgroud)

期待一些帮助.

Avi*_*Raj 5

*是正则表达式中的特殊字符.您必须将其转义才能匹配文字*字符.您还可以使用重复量词{10}来避免重复该字符十次.

perl -i.bak -p -e 's/\*{10}/ nan /g' RayMet_140529.ray_paths
Run Code Online (Sandbox Code Playgroud)