我有一个文件,其中我用大写写了很多时间相同的单词。我想从大写到小写一次修改所有单词,除了那些跟在点后面的单词。那可能吗?我已经在这里和那里找到了一些提示,但是在所有这些提示中都需要将光标放在单词的乞讨处。
答案 0 :(得分:5)
:%s/\.\@<!\<THEWORD\>/theword/g
将“THEWORD
”和“theword
”替换为相关实际单词的正确等效内容。
答案 1 :(得分:3)
:%s/.*/\L&/g
当然,它必须是正确的正则表达式。 这个需要全部(。*),剩下的由你决定。
详细信息:http://vim.wikia.com/wiki/Changing_case_with_regular_expressions
答案 2 :(得分:1)
:1,$s/\([^\.]\s\s*\)MYWORD/\1myword/g
这将用myword替换所有MYWORD,除非它遵循a。和一个或多个空格。这不会在行首开始改变MYWORD。对于那些,您可以再次运行以下内容:
:1,$s/^MYWORD/myword/