【发布时间】:2018-05-09 13:51:49
【问题描述】:
我有一个 1,000 个字符(数字)的块,每行 20 行,每行 50 个字符,每行末尾有一个返回。
我想用记事本++来:
- 删除每行末尾的换行符;和
- 在每 150 个字符后将数字分成单独的新行
非常感谢您提供非常基本的分步说明列表。
谢谢
【问题讨论】:
标签: notepad++
我有一个 1,000 个字符(数字)的块,每行 20 行,每行 50 个字符,每行末尾有一个返回。
我想用记事本++来:
非常感谢您提供非常基本的分步说明列表。
谢谢
【问题讨论】:
标签: notepad++
Ctrl-H 调出“替换”对话框。在搜索模式下选择“扩展”。在“查找内容”中输入“\r”,在“替换为”中什么都不输入。那将一无所有的回报。点击“全部替换”。 (如果您还需要删除换行符,请使用“\n”重复这些步骤。)
此时,您的文件中将只有数字。您有两种选择:
【讨论】:
只用窗口替换:
在选择“扩展”模式后,在“查找”字段中键入 \r\n。我假设您在那里使用 Windows EOL 约定编辑文本文件。删除“替换为”字段中存在的任何字符。按全部替换 -> 所有字符都在一行上
选择“正则表达式”模式。在“查找”字段中键入(.{150}),在“替换为”字段中键入\1\r\n。按下按钮全部替换 -> 一切正常。
第二步使用正则表达式。第一个描述了正好 150 个字符的链;在第二个中,\1 是匹配的链。所以基本上它会选择 150 个字符并附加一个换行符。
【讨论】:
您可以一步完成:
^(.{50})\R(.{50})\R 或 ^(\d{50})\R(\d{50})\R(如果行仅包含数字)。$1$2
. matches newline说明:
^ : beginning of line
(.{50}) : group 1, 50 any character but newline
\R : any kind of linebreak
(.{50}) : group 2, 50 any character but newline
\R : any kind of linebreak
替换:
$1 : content of group 1
$2 : content of group 2
【讨论】: