Regex 在开始字符串和结束字符串之间匹配单个字符
我似乎根本不懂正则表达式。如何匹配位于起始字符串和结束字符串之间的字符。比如说 #开始编辑 #值a=0 #值b=1 #端编辑 我想匹配#开始编辑和#结束编辑之间的任何#Regex 在开始字符串和结束字符串之间匹配单个字符,regex,sed,Regex,Sed,我似乎根本不懂正则表达式。如何匹配位于起始字符串和结束字符串之间的字符。比如说 #开始编辑 #值a=0 #值b=1 #端编辑 我想匹配#开始编辑和#结束编辑之间的任何# 具体来说,我想使用sed在各种文件上用零替换匹配值(删除它们),这些文件可能有或可能没有多个开始编辑和结束编辑部分。sed是基于行的。您可以在一行中轻松地基于正则表达式进行搜索、替换。但在多行上搜索/替换并没有真正简单的方法。AWK可能会成功 ^#START-EDIT.*(#) *. *#END-EDIT$ 如果您在一行上有正
具体来说,我想使用sed在各种文件上用零替换匹配值(删除它们),这些文件可能有或可能没有多个开始编辑和结束编辑部分。sed是基于行的。您可以在一行中轻松地基于正则表达式进行搜索、替换。但在多行上搜索/替换并没有真正简单的方法。AWK可能会成功
^#START-EDIT.*(#) *. *#END-EDIT$
如果您在一行上有正则表达式,那么下面的命令可能就是您要查找的命令
sed -e "/^#START-EDIT.*#END-EDIT$//" myInput.txt
组(#)匹配任何出现的#,其旁边的“*”匹配0个或更多出现的相同:)您可以根据需要在开头使用“^”,在结尾使用“$”。欢呼这应该是非贪婪的。