代码之家  ›  专栏  ›  技术社区  ›  polara

在记事本中查找CRLF++

  •  301
  • polara  · 技术社区  · 16 年前

    如何在记事本+中查找/替换所有CR/LF字符?

    我在找一些相当于微软Word中^P特殊字符的东西。

    17 回复  |  直到 6 年前
        1
  •  390
  •   Community CDub    8 年前

    [\r\n]+ 也应该工作

    更新日期:2012年3月26日,发布日期: Notepad++ 6.0 :

    天哪,它现在真的起作用了!!!!

    PCRE regexp in Notepad++


    原始答案2008(记事本+4.x)-2009-2010-2011(记事本+5.x)

    实际上,它似乎不适用于regexp…

    但是如果你有记事本+5.x,你可以使用 扩展的 '搜索模式和查找 \r\n . 这确实找到了你所有的 CRLF .

    (我意识到这与其他答案是相同的,但同样,“扩展模式”只适用于记事本+4.9、5.x及更多版本)


    自2009年4月以来,您在记事本+网站上有一篇关于此主题的wiki文章:
    How To Replace Line Ends, thus changing the line layout “。
    (由 georgiecasey 在他/她 answer below )

    一些相关的摘录包括以下搜索过程:

    简单搜索 Ctrl键 + f )搜索模式= Normal

    您可以选择 EOL 在编辑窗口中。

    • 只需将光标移动到行尾,然后键入 换档 + 对吗? 箭头。
    • 或者,选择 EOL 使用鼠标,从行尾开始拖动到下一行的开头;拖动到 EOL 不起作用。 您可以手动复制 EOL 并将其粘贴到Unix文件的字段中( LF -只)。

    简单搜索(ctrl+f),搜索模式=扩展

    “扩展”选项显示 \n \r 作为可以匹配的字符。
    与普通搜索模式一样,记事本++也在寻找准确的字符。
    寻找 R 在UNIX格式中,文件将找不到任何内容,而是搜索 \n 威尔。类似地,Macintosh格式文件将包含 R 但不是 \n .

    简单搜索(ctrl+f),搜索模式=正则表达式

    正则表达式使用字符 ^ $ 将匹配字符串锚定到行首或行尾。例如,搜索 return;$ 将查找出现在同一行中没有后续文本的“return;”。锚定字符在所有文件格式中的工作方式相同。
    “.”点元字符与行尾不匹配。

    [在记事本+5.8.5中测试]: 正则表达式搜索 R \n 不工作(与 Scintilla documentation ) .
    当选择EOL时,既不搜索显式(粘贴的)LF,也不搜索字段中放置的(不可见的)EOL字符。 高级搜索( Ctrl键 + R )无regexp

    Ctrl键 + 将插入与换行符匹配的内容。它们将被替换字符串替换。
    我建议这个方法是最可靠的,除非你真的需要使用regex。
    例如,要删除双行距文件中的每秒钟换行,请输入 Ctrl键 + 在搜索字符串框中两次,在替换字符串框中一次。

    高级搜索( Ctrl键 + R )ReGEXP。

    既不 Ctrl键 + , $ 也不 \rn 是匹配的。


    同样的wiki也提到 十六进制编辑器替代 :

    • 在文档开头键入新字符串。
    • 然后选择 以十六进制模式查看文档 .
    • 选择一条新行并点击 Ctrl键 + H .
    • 当您打开“替换”对话框时,在后台选择新的替换字符串并 Ctrl键 + C 复制以粘贴到“替换为文本”输入中。
    • 然后根据需要更换或全部更换。

    注意:为新行选择的字符通常显示为 0a .
    如果文件为Windows格式,则可能具有不同的值。在这种情况下,你可以去 Edit -> EOL Conversion -> Convert to Unix Format ,在更换后,将其切换回 Edit -> EOL Conversion -> Convert to Windows Format .

        2
  •  22
  •   Sundar R    16 年前

    似乎这是一个 FAQ ,提供的决议是:

    不带regexp的简单搜索(ctrl+h)

    可以启用“查看/显示行尾” 或查看/全部显示,然后选择“现在” 可见换行符。那么什么时候 你启动命令一些字符 匹配换行符将 粘贴到搜索字段中。比赛 将被替换 字符串,与regex模式不同。

    注1:如果使用 鼠标,从它们前面开始拖动 到下一行的开头。 拖到行尾不会 工作。

    注2:不能复制和粘贴 他们自己去了战场。

    不带regexp的高级搜索(ctrl+r)

    ctrl+m将插入与换行符匹配的内容。它们将被替换字符串替换。

        3
  •  10
  •   Nathen Silver    16 年前

    在“替换”对话框中,要将搜索模式设置为“扩展”。正常或正则表达式模式不起作用。

    然后只需查找“\r\n”(或仅适用于\n Unix文件,或仅适用于\r Mac格式文件),并将替换设置为所需的任何内容。

        4
  •  9
  •   David Whitmore    16 年前

    我对“查找/替换”窗口中的\r\n正则表达式不太熟悉。

    但是,这在记事本+v4.1.2中有效:

    1. 使用“视图显示行尾”菜单可以显示行尾字符。 (回车换行符应显示为单个带阴影的CRLF“字符”。)

    2. 选择一个CRLF“字符”(将光标放在一个字符的前面,按住SHIFT键,然后按一次右光标键)。

    3. 将CRLF字符复制到剪贴板。

    4. 确保你 不要 打开“查找”或“查找/替换”对话框。

    5. 打开“查找/替换”对话框。 “查找内容”字段显示剪贴板的内容:在本例中,CRLF字符-显示为2个“框字符”(可能是不可打印的字符?)

    6. 确保“正则表达式”选项处于关闭状态。

    现在,您应该能够根据需要进行计数、查找或替换。

        5
  •  5
  •   Bhargav Rao rlgjr    9 年前

    CRLF图像

    enter image description here


    没有CRLF的图像

    enter image description here

        6
  •  4
  •   Chris    14 年前

    我发现它的工作方式是使用replace函数,并使用带有“extended”模式的“\n”。我使用的是5.8.5版。

        7
  •  4
  •   Peter Mortensen icecrime    7 年前

    2013年,V6.13或更高版本,使用:

    菜单 编辑 艾斯 EOL转换 艾斯 窗口格式 .

        8
  •  2
  •   Chris Marasti-Georg Scott Weinstein    16 年前

    假设它有“正则表达式”搜索,请查找\r\n。我更喜欢\r?\因为有些文件不使用回车。

    编辑:谢谢你的反馈,不管是谁投的票。我知道…没什么,因为你没有提供反馈。为什么这是错误的?

        9
  •  2
  •   community wiki 2 revs, 2 users 60% Peter Mortensen    7 年前

    使用高级搜索选项( Ctrl键 + R )并使用CRLF的键盘快捷方式( Ctrl键 + )插入回车。

        10
  •  2
  •   Peter Mortensen icecrime    7 年前

    如果需要执行复杂的regexp替换,包括\r\n,则可以通过三步方法来解决此限制:

    1. 全部替换 \r\n 比如说,用标签 #GO# 检查“扩展”,更换 \rn 通过 我想知道
    2. 执行regexp,例如删除多行 ICON="*" 从HTML书签中检查regexp,替换 ICON=.[^"]+.> by >
    3. 放回\r\n检查“扩展”,替换 我想知道 通过 \rn
        11
  •  1
  •   Peter Mortensen icecrime    7 年前

    我在记事本+中打开了该文件,并在几个步骤中进行了替换:

    1. 将所有“\r\n”替换为“\r\n”
    2. 全部替换“;\r\n”为“\r\n”
    3. 全部替换为\r\n

    这会将所有的中断放在它们应该所在的位置,并删除那些正在中断文件的中断。

    这对我很有用。

        12
  •  1
  •   user2447473    6 年前

    转到视图-->显示符号-->显示所有字符 //对我有用

        13
  •  0
  •   Madhava Reddy    8 年前

    进行此设置。菜单->视图->显示符号->取消选中“显示行尾”

        14
  •  0
  •   Fred Gandt    8 年前

    要将单独行的文档更改为一行,每行在逗号分隔的列表中形成一个条目:

    1. CTRL + f 打开搜索/替换程序。
    2. 单击“替换”选项卡。
    3. 填写“查找内容”条目 \r\n “。
    4. 填写“替换为”条目 , “或” , “(取决于偏好)。
    5. 取消选中“匹配整个单词”复选框 (一个重要的逻辑位)。
    6. 检查“扩展”单选按钮。
    7. 单击“全部替换”按钮。

    这些步骤将 例如

    起泡棒

    巴兹巴兹

    巴兹福

    进入:

    Foo Bar,Bar Baz,Baz Foo酒吧

    或: (取决于偏好)

    Foo Bar,Bar Baz,Baz Foo酒吧

        15
  •  0
  •   Peter Mortensen icecrime    7 年前

    也许你可以使用textfx插件

    在textfx中,转到textfx edit_

        16
  •  0
  •   Cool Javelin    6 年前

    在NPV6.9中,我完全无法做到这一点。 我发现在msoft word(2K)上很容易。

    打开文档,转到“编辑”->替换。

    然后在搜索框的底部,点击“更多”,然后找到“特殊”按钮,他们有几个东西给你。对于DOS样式,我使用了“段落”样式。这是Windows Land中的CR LF对。

        17
  •  -1
  •   Trent    8 年前

    只需在“替换”字段中用“查找”和“替换”替换为一个空格,就可以使所有内容都上移到一行。然后执行“查找并替换”(在我的示例中为分号)并替换为;\n

    :) -T&C