我似乎無法理解正則表達式。我如何匹配駐留在START和END字符串之間的字符。對於實施例在開始字符串和結束字符串之間匹配單個字符
#START-EDIT
#值a = 0
#VALUEB = 1
#END-EDIT
我想匹配任何#這是#START之間-EDIT和#END-EDIT。
具體而言,我想用sed替換各種文件中沒有(或刪除它們)的匹配值,這些文件可能有或沒有多個START-EDIT和END-EDIT部分。
我似乎無法理解正則表達式。我如何匹配駐留在START和END字符串之間的字符。對於實施例在開始字符串和結束字符串之間匹配單個字符
#START-EDIT
#值a = 0
#VALUEB = 1
#END-EDIT
我想匹配任何#這是#START之間-EDIT和#END-EDIT。
具體而言,我想用sed替換各種文件中沒有(或刪除它們)的匹配值,這些文件可能有或沒有多個START-EDIT和END-EDIT部分。
^#START-EDIT.*(#) *. *#END-EDIT$
sed是基於行的。你可以很容易地搜索,在一行中替換基於正則表達式。但是,在多線上搜索/替換並不容易。 AWK可能會做到這一點。
如果你有一個行正則表達式,下面的命令可能是你在找什麼
sed -e "/^#START-EDIT.*#END-EDIT$//" myInput.txt
組(#)任何出現一個相匹配的#和「*」,以它爲0匹配或更多出現相同的情況:)你可以根據你的要求在開始時使用'^',最後使用'$'。 乾杯 – 2009-06-22 14:29:02
這應該是非貪心。 – Svante 2009-06-22 15:57:27