我正在尝试清理文本文档,并从文档的每一行中删除某些单词(如果其中包含标记(X
)。因此,对于以下行:
Adäë ee tee tdX hnX dedas ödaX.
然后将成为:
Adäë ee tee dedas.
字母的字符为a, e, i, o, u, ë, ä, ö, t, d, n
,因此不包括X
。同样,标记X
将始终是要删除的单词中的最后一个字符。我曾尝试修改here中的语句,但无法使其正常工作。
答案 0 :(得分:0)
VIM完全替换命令是这样的:
:%s/before/after/g
其中
对于您的问题,您可以使用
:%s/\s*\<\S\+X\>//g
其中
答案 1 :(得分:0)
您可能要尝试:
:%s/\s*\S*X\([aeiouëäötdn]\)\@!//g
它会遍历所有行,并删除以X
结尾的单词及其前导空格。断定前瞻可以断言X
之后的下一个字母不是字母。