vim匹配正则表达式中的标记

时间:2017-07-26 14:01:08

标签: regex vim selection

在gvim(v8)regexp中,我们可以使用\%V, e.g. s/\%Vabc/xyz/在所选区域中指定一个点。但是,\%V匹配选区中的任何位置,我希望只在视觉选择的开头或结尾处匹配(标记<,&gt;)。

此外,此正则表达式/\%V\_.*\%V/不会选择该区域的最终字符。 \%V应该是零宽度?

那么如何指定标记的位置,如:

:s/\mark(&LT;) \ ZS(ABC)\泽\标记(大于)/ XYZ /`

1 个答案:

答案 0 :(得分:2)

是的,\%V是零宽度;要包含最后选择的字符,您需要附加.以包含最后一个字符:/\%V\_.*\%V./

标记位置有特殊原子;您也可以将它们与'<,'>标记一起使用:/\%'<.*\%'>./。由于它们也是零宽度,上面也适用于此,因此它不是更好的选择。