我有23,000行,我需要1
在每行末尾添加数字。
我怎样才能做到这一点?
马上:
[line1]TEXT
[line2]TEXT
我想要的是:
[line1]TEXT1
[line2]TEXT1
:g/$/norm A1
。或更复杂但更奇特gg$<C-v>G$A1<esc>
。甚至是公认的令人讨厌的东西ggqqqqqA1<esc>j@qq@q
。做到这一点的方法不止一种:P
我有23,000行,我需要1
在每行末尾添加数字。
我怎样才能做到这一点?
马上:
[line1]TEXT
[line2]TEXT
我想要的是:
[line1]TEXT1
[line2]TEXT1
:g/$/norm A1
。或更复杂但更奇特gg$<C-v>G$A1<esc>
。甚至是公认的令人讨厌的东西ggqqqqqA1<esc>j@qq@q
。做到这一点的方法不止一种:P
Answers:
菜单“搜索”>“替换”(或Ctrl+ H)
将“查找内容”设置为 \r\n
将“替换为”设置为 1\r\n
启用“正则表达式”或“扩展”
注意-“正则表达式”是“扩展”的超集,因此在这种特殊情况下,使用哪个都无所谓。
点击“全部替换”
笔记:
以上假设您正在使用Windows EOL编辑文本文件\r\n
。
如果您使用的文件带有不同的EOL,则可以使用菜单“编辑”>“ EOL转换”将它们转换为Windows EOL。
如果您不使用Windows EOL,并且不想转换它们,请改用以下命令:
使用\n
,而不是\r\n
用于Unix / OS X EOLS(“查找内容”中\n
,“替换为”是1\n
)
使用\r
的,而不是\r\n
为Mac OS(最高版本为9)EOLS(“查找内容”中\r
,“替换为”是1\r
)
\n
或\r
替代(分别为Unix和Mac EOL )。\n
=> 1\n
或\r
=> 1\r
。我经常使用Extended而不是Regex亲自进行此类操作。
\r
仅适用于已失效的Mac OS。不是OS X,后者使用\n
。
更新的答案:
点击Ctrl+ H打开“替换对话框”。
在搜索模式下,勾选正则表达式。
Find what:
$
Replace with:
1个
并击中 Replace all
原始答案
点击Ctrl+ H打开“替换对话框”。
在搜索模式下,勾选Regular Expression
。
找什么: ^.*$
用。。。来代替 ($0)1
并击中 Replace all
说明
您正在搜索正则表达式^.*$
,它本质上是每一行。^
标记一行的开始,.*
包括任意次数的任意字符,并$
标记该行的结束。因此,此正则表达式可以找到每一行的所有内容。
我们将替换为($0)1
,将$0
其作为找到的表达式,并在后面附加一个1
。
$
和替换= 1
就足够了。
或者像大男孩一样做:)。
使用Shift + Alt =>右键(一次)=>向下键(按直到最后一行)选择最后一列。
键入任何您想要的。它会一次出现在所有行上。
如果它是同样长的字符串,则可以按住Alt并单击并拖动以阻止选择,并可以同时在多行上书写。如果它们的长度不相等,但没有空格分隔,则无法执行相同的过程,然后将“”替换为“”。
扩展模式。
我想添加一个略有不同的方法,其他答案中没有提到:扩展模式。
这样的事情-所有你所关心的是\r
,\n
,\t
或者包含在其他这个小名单(尽管该网页看起来是“过时的”,所以不是100%确定其真实性)没有理由去充分定期表达。
我使用Notepad ++的扩展模式“经常”来按摩文件布局-主要以消除多个空行,多余的空格和其他各种奇数为中心。
\r\n
对于Windows\r
适用于旧版本的MacOS(9或更旧版本)\n
适用于Unix或更高版本的MacOS(OS X或更高版本)1\r\n
对于Windows1\r
适用于旧版本的MacOS(9或更旧版本)1\n
适用于Unix或更高版本的MacOS(OS X或更高版本)