只是学习vim并试图删除括号<>
之间的所有内容。尝试%s/<*>//g
,但只删除了结尾>
括号。我想删除<>
代码
答案 0 :(得分:3)
*
是一个修饰符 - 它本身并不匹配文本,它会修改前一个事物以匹配零次或多次。因此,您的模式将匹配零个或多个<
个字符,后跟一个>
- >
或<>
或<<>
或<<<<<<<<>
,但如果<>
之间还有其他任何内容,那就不行了。
要匹配任何字符,特殊模式.
匹配任何单个字符。因此,您可以使用%s/<.*>/
,但如果您在一行中有多个标记会导致问题 - 它会匹配第一个标记的<
和最后一个标记的>
删除它们以及它们之间的所有内容。
由于代码无法嵌套(您无法在代码中包含>
或<
),因此您可以使用任何&#34;任何内容来解决这个问题但是&#34;图案:
%s/<[^>]*>//g
答案 1 :(得分:0)
你在看什么
:%s/<.*>//g
但对于这个特殊情况,我会做
da<
将光标放在<>
内,因为它涉及较小的击键,:help text-objects