微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Emacs:如何复制正则表达式匹配?

我只是尝试使用正则表达式在缓冲区中搜索/突出显示文本并复制它.我不想要整条线,只需要比赛.有任何想法吗?

我有大量的文本行包含标签“[12345] [09876]”,我想要正则表达式
复制所有标签.

例如

Lorem ipsum dolor sit amet,consectetuer adipiscing elit [12345][09876],sed diam nonummy [12345][123456] nibh euismod tincidunt ut laoreet dolore 
magna aliquam erat volutpat. Ut wisi enim ad minim veniam,quis nostrud [54321][09876] 
exerci tation ullamcorper suscipit lobortis nisl ut aliquip [23451][09656]

解决方法

是的,增量搜索不会移动点位置,所以做yank不会复制匹配.

最简单的解决方案可能如下.

定义复制搜索匹配的功能

(defun copy-isearch-match ()
    (interactive)
    (copy-region-as-kill isearch-other-end (point)))

并将其添加搜索模式映射中

(define-key isearch-mode-map (kbd "M-w") 'copy-isearch-match)

然后做M-x isearch-forward-regexp你可以按M-w来复制比赛.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐