非交互式 emacs 正则表达式替代品

djh*_*987 5 regex emacs elisp

emacs lisp 中是否有一个(非交互式)函数可以替换任意字符串中匹配的正则表达式?

IE

(sub regex search-string replace-string)
Run Code Online (Sandbox Code Playgroud)

(sub "[^.x/]" "beef./xxfoo" "")
;; => "./xx"
Run Code Online (Sandbox Code Playgroud)

Dre*_*rew 3

是的,请参阅函数replace-regexp-in-string。就那么简单。

要替换缓冲区中的匹配文本,您可以使用replace-regexp.

替换不需要是文字字符串,但可能涉及检索正则表达式匹配的部分和其他操作。用于C-h f查看这些函数的文档。