我需要关于vim和正则表达式的帮助。 我有一个HTML文件,其中有很多class="...",例如: <td class="td_3"><p class="block_3">80 €</p></td> <td class="td_3"><p class="block_3">90 €</p></td> 我没有使用任何CSS,因此想要删除它们。 我尝试了: :%s/class="[a-z0-9]"//g 但是它没有起作用。 我做错了什么吗?
使用 class="[a-z0-9]" 这个模式,你可以在引号中匹配一个单个的字母或数字字符,同时引号内可能包含除双引号以外的任何文本。 你可能还想删除 class 前面的空格。 你可以使用 :%s/\s\+class="[^"]*"//g 在这里,\s\+将匹配一个或多个空白字符,class="匹配一个字面字符串,然后[^"]*尝试找到除了"之外的任意零个或多个字符并在可能的情况下尽可能多地匹配,然后"匹配结束双引号标记。
:%s/\s*class="[^"]*"//g
。 - Wiktor Stribiżew