OCR中文得到的文本每个字之间都有空格,如“张 三 李 四”这种,有没有什么快速删除所有区域内空格的办法?网上搜索现成的命令一般都是删除多余的空格,而不是删除所有空格。
直接搜索替换好了,选中需要替换的文字,然后 C-s,输入空格,然后 M-%, C-j, !
我用的spacemacs的配置,选择需要替换的区域,然后输入:
s/ //g
即可全部删除空格。
我本来也打算直接搜索替换,但是我用swiper,似乎无法直接搜索空格
M-x replace-string
?
我用的是M-x replace-regex
差别不大
swiper里,一个空格用来分割关键字,连续两个空格表示一个空格。
1 个赞
describe-function replace-string
你可以看一下replace-string的函数说明,当region存在时,它仅会替换区域内的字符
选中区域,使用replace-string,将空格替换掉
1 个赞
碰到类似的问题,Chatgpt 给出的结果,只删除中文字符之间的空格:
(defun remove-multiple-spaces-between-chinese ()
"Remove one or more spaces between Chinese characters."
(interactive)
(save-excursion
(goto-char (point-min))
(while (re-search-forward "\\([[:multibyte:]]\\) +\\([[:multibyte:]]\\)" nil t)
(replace-match "\\1\\2"))))
1 个赞