我想在一个文件夹中的所有文件中替换/**/
。我试过了:
perl -pi -w -e 's/\/**\///g;' *.java
但是得到了一个错误:Nested quantifiers in regex; marked by <-- HERE in m//** <-- HERE // at -e line 1.
同样的事情也有:
sed 's/\/**\///g;'
我基本上需要用一个空格替换/**/
。
发布于 2013-06-22 06:03:43
你也需要避开星号。为了保持可读性,您可能还需要使用其他分隔符:
sed "s#/\*\*/##g"
发布于 2013-06-22 14:56:27
您可以在[]
中指定*
perl -pi -w -e 's#/[*]{2}/# #g;' *.java
或者,您可以使用quotemeta运算符:
perl -pi -w -e 's#\Q/**/\Q# #g;' *.java
它转义所有与/[A-Za-z_0-9]/
不匹配的ASCII码字符。
https://stackoverflow.com/questions/17244979
复制相似问题