如何提取捕获的 Gnu emacs 正则表达式 (regexp) 组以插入到其他地方?

How do I extract a captured Gnu emacs regex (regexp) group to insert elsewhere?

在 Gnu Emacs(我是 运行 V 24.3)中,我可以像这样捕获一个匹配组:

M-x re-search-forward
RE search: \([0-9]+\)\.txt

... 查找一个或多个数字后跟 .txt 的字符串。但现在我想在另一个缓冲区中插入数字串(在第 1 组中捕获)。

我想答案是显而易见的,但我却没有想到。有什么提示吗?

使用(match-string 1),获取匹配第一个子组的字符串。

这假设您在 re-search-forward.

之后没有更改匹配数据(例如,通过进行另一次搜索)

参见 Elisp 手册,节点 Simple Match Data