2014-12-01 50 views
3

emacs lisp中是否有一個(非交互式)函數替換任意字符串中匹配的正則表達式?非交互式emacs正則表達式替換

(sub regex search-string replace-string) 

(sub "[^.x/]" "beef./xxfoo" "") 
;; => "./xx" 
+1

replace-regexp-in-string? – 2014-12-01 19:10:45

回答

2

是的,見功能replace-regexp-in-string。就那麼簡單。

而要替換緩衝區中的匹配文本,您有replace-regexp

替換不需要是文字字符串,但可能涉及檢索正則表達式匹配和其他操作的部分。使用C-h f查看這些功能的文檔。

+0

您可以提供一個鏈接,指向emacs文檔中該功能的位置嗎?我無法在任何地方找到它。 – djhaskin987 2014-12-02 15:20:14

+1

當然,Elisp手冊node ['Search and Replace'](https://www.gnu.org/software/emacs/manual/html_node/elisp/Search-and-Replace.html#Search-and-Replace) 。你可以使用手冊中的'我replace-regexp-in-string'來找到它。 – Drew 2014-12-02 18:18:15