我似乎无法理解正则表达式。如何匹配START和END字符串之间的字符。例如
#START-EDIT
#值a = 0
#VALUEB = 1
#END-EDIT
我希望匹配#START-EDIT和#END-EDIT之间的任何#。
具体来说,我想使用sed在各种文件上替换匹配的#值(删除它们),这些文件可能有也可能没有多个START-EDIT和END-EDIT部分。
答案 0 :(得分:1)
^#START-EDIT.*(#) *. *#END-EDIT$
答案 1 :(得分:1)
sed是基于行的。您可以在一行中轻松搜索,替换基于正则表达式。但是在多线上搜索/替换没有非常简单的方法。 AWK可能会做到这一点。
如果您在一行上使用正则表达式,则可以使用以下命令
sed -e "/^#START-EDIT.*#END-EDIT$//" myInput.txt