白色 space 贪婪正则表达式

white space greedy regexp

下面是 vi 正则表达式

:%s/\s*/\t/g

替换

AP DP

A\tP\tD\tP

但是,我很期待

AP\tDP

为什么会这样?

\s* 表示贪婪地匹配 0 个或更多 个空格。如果要替换存在 至少 个空格的空格,请使用 + 量词:

:s/\s\+/\t/g