Notepad++正则表达式——替换正则表达式的一部分

Notepad++ regular expression - replace a part of regex

我正在修复损坏的数据库导出到 txt 文件,我是正则表达式的新手:

可以使用 Notepad++ 正则表达式找到我损坏的行:

\r\n[^"]

(细换行符后跟不是 " 的所有内容)

我需要删除这些 \r\n 但我需要保留后面的字符(在我的数据中这些是数字)

所需数据:

"USERNAME"|"Text1"|"Text2"|"Spreadsheet" (CR)(LF)
"USERNAME"|"Text1"|"Text2"|"Spreadsheet" (CR)(LF)

损坏的数据:

"USERNAME"|"Text1"|"Text2line1 - #3.50 (CR)(LF)
1 x text2line2 - #5.40 (CR)(LF)
2 x text2line3 #6.75 (CR)(LF)
|"Spreadsheet" (CR)(LF)

因此这不起作用:

FIND: \r\n[^"]
REPLACE: [^"]

因为这样我会去掉“1”和“2”以及新行的开头。

我将感谢你的帮助:)

对表达式稍作更改,使其显示为 \r\n([^"])(注意额外的 ())。这会将匹配放在正则表达式组中。

然后,只需将其替换为 ,这是您在上面的表达式中匹配的正则表达式组。

您可以使用积极的前瞻:

查找内容:\R(?!=[ ^"])
替换为:NOTHING

\R 代表任何类型的换行符。
(?!=[ ^"]) 是零宽度断言,假设换行符后没有引号