我正在使用emacs中的ctrl + s搜索功能查找特定模式。如何使用emacs在文本文件中搜索换行
我找0,0,0“换行”
基本上,有大量的行,有的有0,0,0行的中间里面,但我想特别搜索线以0,0,0结尾,所以我想在搜索字符串的末尾添加一个换行符。
如何在emacs中执行此操作?
我正在使用emacs中的ctrl + s搜索功能查找特定模式。如何使用emacs在文本文件中搜索换行
我找0,0,0“换行”
基本上,有大量的行,有的有0,0,0行的中间里面,但我想特别搜索线以0,0,0结尾,所以我想在搜索字符串的末尾添加一个换行符。
如何在emacs中执行此操作?
您可以通过在其他模式下附加一个C-q(,在isearch模式下,那种模拟quoted-insert
,该组合键的默认绑定)来输入特殊字符。因此,在你的情况下,你应该使用:C-s 0,0,0 C-q C-j
,因为C-q C-j插入一个换行符。
另一种方法是使用正则表达式isearch。使用C-M-s而不是C-s,并搜索0,0,0$
。 ($
是匹配行尾的正则表达符号。)
@juanleon和@legoscia提供了不同的答案,解决了不同的问题。你需要决定你有哪些问题。
区别在于:你是否希望找到的文字为包括换行符(与C-j
相同),还是不是?
如果要替换找到的匹配文本,例如,是否要替换换行符,或者是否只想替换行尾的匹配文本,即文本只是在换行符之前?如果后者然后以$
结束您的匹配模式。如果前者然后用C-j
(换行符char)结束匹配模式。