如何在记事本++中查找/替换所有CR / LF字符?
我正在寻找与Microsoft Word中的^ p特殊字符等效的东西。
CTRL+H
选择“搜索模式:正则表达式”。“查找内容:$”和“替换为:\ r”。复制将内容粘贴到记事本中或将其保存到光盘中。
[\r\n]+
现在一样工作。我已经更新了答案,并将庆祝!
\R
还没有哪个匹配的通用换行; 就是说,任何被认为是换行序列的东西……
如何在记事本++中查找/替换所有CR / LF字符?
我正在寻找与Microsoft Word中的^ p特殊字符等效的东西。
CTRL+H
选择“搜索模式:正则表达式”。“查找内容:$”和“替换为:\ r”。复制将内容粘贴到记事本中或将其保存到光盘中。
[\r\n]+
现在一样工作。我已经更新了答案,并将庆祝!
\R
还没有哪个匹配的通用换行; 就是说,任何被认为是换行序列的东西……
Answers:
[\r\n]+
也应该工作
2012年3月26日更新,Notepad ++ 6.0的发布日期:
天哪,它实际上确实可以正常工作了!!!
原始答案2008(Notepad ++ 4.x)-2009-2010-2011(Notepad ++ 5.x)
实际上不,它似乎不适用于正则表达式...
但是,如果您拥有Notepad ++ 5.x,则可以使用“ 扩展 ”搜索模式并查找\r\n
。那确实找到了你所有的CRLF
。
(我意识到这是与其他答案相同的答案,但同样,“扩展模式”仅适用于Notepad ++ 4.9、5.x及更高版本)
从2009年4月开始,您在Notepad ++网站上有关于此主题的Wiki文章:
“ 如何更换线端,从而改变线布局 ”。
(由georgiecasey在下面的回答中提到)
一些相关的摘录包括以下搜索过程:
简单搜索(Ctrl+ F),搜索模式=
Normal
您可以
EOL
在编辑窗口中选择一个。
- 只需将光标移至该行的末尾,然后键入Shift+ Right箭头。
- 或者,要
EOL
使用鼠标进行选择,请从行尾开始并拖动到下一行的开头;拖到右侧EOL
将不起作用。您可以手动复制EOL
并将其粘贴到Unix文件的字段中(LF
仅-)。简单搜索(Ctrl + F),搜索模式=扩展
“扩展”选项显示
\n
和\r
为可以匹配的字符。
与普通搜索模式一样,Notepad ++也在寻找确切的字符。
搜索\r
在UNIX格式的文件也不会发现什么,但寻找\n
的意志。同样,Macintosh格式的文件将包含,\r
但不包含\n
。简单搜索(Ctrl + F),搜索模式=正则表达式
正则表达式使用字符
^
并将$
匹配字符串锚定到行的开头或结尾。例如,搜索return;$
将发现“ return;”的出现。在同一行上没有后续文本的情况下发生。锚字符在所有文件格式中均相同。
“。” 点元字符与行尾不匹配。[在Notepad ++ 5.8.5中测试]:使用显式
\r
或\n
不起作用的正则表达式搜索(与Scintilla文档相反)。
选择EOL时,既不会搜索显式(粘贴)的LF,也不会搜索字段中放置的(不可见的)EOL字符。不带正则表达式的高级搜索(Ctrl+ R)Ctrl+ M将插入与换行符匹配的内容。它们将被替换字符串替换。
我建议此方法是最可靠的方法,除非您确实需要使用正则表达式。
例如,要删除双倍行距文件中的第二个换行符,请在搜索字符串框中输入Ctrl+ M两次,在替换字符串框中输入一次。使用Regexp进行高级搜索(Ctrl+ R)。
无论是Ctrl+ M,
$
也不\r\n
是匹配的。
同一维基还提到了十六进制编辑器的替代方案:
- 在文档的开头键入新的字符串。
- 然后选择以十六进制模式查看文档。
- 选择新行之一,然后按Ctrl+ H。
- 出现“替换”对话框时,在背景上选择新的替换字符串,然后Ctrl+ C复制它以将其粘贴到“替换为文本”输入中。
- 然后根据需要替换或全部替换。
注意:为换行选择的字符通常显示为
0a
。
如果文件为Windows格式,则可能具有不同的值。在这种情况下,您可以随时转到Edit -> EOL Conversion -> Convert to Unix Format
,并在更换后将其切换回Edit -> EOL Conversion -> Convert to Windows Format
。
[^\r]\n
工作正常(正则表达式搜索):i.stack.imgur.com/PxZWD.png
看来这是FAQ,提供的解决方法是:
无需正则表达式的简单搜索(Ctrl + H)
您可以打开“查看/显示行尾”或“查看/显示全部”,然后选择现在可见的换行符。然后,当您启动命令时,一些与换行符匹配的字符将被粘贴到搜索字段中。与正则表达式模式不同,匹配项将由替换字符串替换。
注1:如果使用鼠标选择它们,则在它们之前开始并拖动到下一行的开始。拖到行尾将不起作用。
注意2:您不能自己复制并粘贴到字段中。
不带正则表达式的高级搜索(Ctrl + R)
Ctrl + M将插入与换行符匹配的内容。它们将被替换字符串替换。
在“替换”对话框上,要将搜索模式设置为“扩展”。正常或正则表达式模式将不起作用。
然后只需找到“ \ r \ n”(对于unix文件,仅找到\ n;对于Mac格式文件,仅找到\ r),然后将替换设置为所需的值即可。
\r
自2001年以来就没有使用过...(现在是Unix)
我在查找/替换窗口中对\ r \ n正则表达式不太满意。
但是,这在Notepad ++ v4.1.2中有效:
使用“查看|显示行尾”菜单可以显示行尾字符。(回车换行符应显示为一个带阴影的CRLF“字符”。)
选择一个CRLF“字符”(将光标放在一个字符的前面,按住SHIFT键,然后按一下RIGHT CURSOR键)。
将CRLF字符复制到剪贴板。
确保您没有打开“查找”或“查找/替换”对话框。
打开查找/替换对话框。“查找内容”字段显示剪贴板的内容:在这种情况下,CRLF字符-显示为2个“框字符”(大概是不可打印的字符?)
确保“正则表达式”选项为OFF。
现在,您应该能够根据需要进行计数,查找或替换了。
在2013年的v6.13或更高版本中,请使用:
菜单编辑 → EOL转换 → Windows格式。
使用高级搜索选项(Ctrl+ R),并使用CRLF的键盘快捷键(Ctrl+ M)插入回车符。
DC2
”中插入了一个奇怪的控制字符。Notepad ++版本:7.5.6(2018-05-19)。
进行此设置。菜单->查看->显示符号->取消选中显示行尾