如何将文本粘贴到每一行的末尾?崇高2


159

我很好奇在Sublime 2中是否可以将文本粘贴到每一行的末尾?相反,到每一行的开头。

测试线一

测试线二

测试线三

测试线四

...

假设您在编辑器中有100行文本,并且要将引号粘贴到每行的开头和结尾。

有没有一种简单的方法或任何人都知道的插件?这通常会为我节省很多时间在各种项目上。

谢谢。


4
当前,这是主页上的第二个演示... sublimetext.com
TWiStErRob

Answers:


28

您可以在此正则表达式中使用“ 搜索和替换”功能^([\w\d\_\.\s\-]*)$来查找文本,替换后的文本为"$1"


7
太棒了!因此,我发现以下内容对我有用:使用正则表达式(?> \ x0D \ x0A?| [\ x0A- \ x0C \ x85 \ x {2028} \ x {2029}])将找到每行的结尾。并使用正则表达式:^ [a-zA-z0-9!@#$“)(*&!+ _-]将找到每一行的开头(前提是为正则表达式添加了所有字符,以便在每行的开头进行搜索谢谢@yohann!
Tony H.

5
如果在功能强大的编辑器(如Vim或ST2)中使用正则表达式执行此操作,则会丢失线索。为什么要把像样的编辑器降级为sed
sehe 2012年

感谢您挽救了我一生的3个小时
F. Mayoral 2013年

571

是的Regex很酷,但是还有其他选择。

  • 选择您要添加前缀或后缀的所有行
  • 转到菜单选择->分成几行Cmd/ Ctrl+ Shift+ L

这使您可以一次编辑多行。现在,您可以在每行的开头和结尾添加* 引号(“)或任何*


36
这很容易做到。
亚达

6
这是一个更好的答案。您也可以在使用鼠标选择区域的同时使用shift(Windows / Linux)或Option键(Mac)获得相同的结果。
dbn 2012年

5
您可能经常会发现自己如上所述编辑了多行,但随后又想将它们重新合并为一行。连接多行的快捷方式:ctrl / cmd + J
fionbio 2013年

3
这是一个很好的答案,但是对于非常大的行数,与使用查找和替换相比,它可能占用更多的CPU资源。
Ceilingfish 2013年

2
我认为这应该是首选答案
Michael Osofsky 2014年

77

这是我一直使用的工作流程,仅使用键盘

  1. Ctrl/ Cmd+ A全选
  2. Ctrl/ Cmd+ Shift+ L分成几行
  3. ' 每行都用引号引起来

请注意,如果选择中有空白行,则此操作无效。


3
不为我工作在ST2,步骤3中删除的所有线路,并与“第3步应更换它HomeEnd
安德烈

@andrej-听起来像个错误。确保您使用的是最新版本的st2,如果是,请在sublimetext.userecho.com上
dbn

1
@dbw运行sublime text 2.0.1 build2217。作为bug张贴在sublimetext.userecho.com/topic/184875-
andrej

@andrej如果选择中有任何空白行,我可以重现您的问题
Patrick McDonald

52
  1. 选择要在其上添加前缀或后缀的所有行。(但是,如果您只想在特定行中添加前缀或后缀,则可以使用ctrl+ Left mouse button创建多个游标。)
  2. Ctrl+ Shift+ L
  3. 按下Home键并添加前缀。
  4. 按下End按键并添加后缀。

请注意,请禁用自动换行,否则,如果您的行长超过了sublime的宽度,它将无法正常工作。


2
这是实际的解决方法。家庭和结束键对于正常工作至关重要
菲尔

在Sublime Text 3(对于Mac)中,home键和end键对我不起作用。如果你有这样的烦恼,检查:coderwall.com/p/upolqw/...
AVANCE

不是真的@Phil。您也可以使用Cmd +向左/向右箭头进行导航。我认为同样适用于Windows
Claud H,

33

假设您有以下几行代码:

test line one
test line two
test line three
test line four

使用Regex 搜索和替换 Ctrl + H,让我们找到它:并将其替换为,我们将得到:^"

"test line one
"test line two
"test line three
"test line four

现在让我们搜索这个:$并用替换它",现在我们有了:

"test line one"
"test line two"
"test line three"
"test line four"

Sublime

22

使用列选择。色谱柱选择是Sublime2的独特功能之一。它用于为您提供多个匹配的游标(此处为教程)。要获取多个游标,请执行以下任一操作:

老鼠:

  • 按住shift键(Windows / Linux)或选项键(Mac),同时用鼠标选择一个区域。

  • 单击鼠标中键(或滚动)也将选择为一列。

键盘:

  • 选择所需的区域。
  • 输入control+ shift+ L(Windows / Linux)或command+ shift+ L(Mac)

现在,您已经选择了多行,因此可以在每行的开头和结尾处键入引号。最好利用Sublime的功能,然后键入。”时,Sublime会自动用引号引起来。

键入esc以退出多光标模式。


3
您还可以通过单击鼠标中键并拖动来触发列选择。
Curtis Gibby

2
这是解决问题的最具体的Sublime Text方法,并使用了Sublime Text的基本功能。由于OP在标题中询问有关Sublime Text的问题,因此应为可接受的答案。
Dribbler '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.