preg_replace 用于替换文件中的注释文本

preg_replace 用于替换文件中的注释文本

在一个文件中,我想替换

COMMENT AS `<some_comment>`

COMMENT '<some_comment>'

也就是说,替换COMMENT AS为 just COMMENT,并替换以下注释周围的反引号 - 但不替换其他任何地方的反引号。我该如何从命令行执行此操作?

答案1

您可以使用 sed,并仔细引用:

sed "s/^COMMENT AS \`\(.*\)\`$/COMMENT '\1'/"

由于内部有单引号,所以这里我使用双引号将语句括起来。

反引号必须从 shell 中转义。

括号被转义以使 sed 捕获它们(以便稍后使用标记重新插入\1)。

我还将文本锚定到行的开头 ( ^) 和结尾 ( )。$

相关内容