如何将文本粘贴到每一行的末尾?崇高 2
Posted
技术标签:
【中文标题】如何将文本粘贴到每一行的末尾?崇高 2【英文标题】:How to paste text to end of every line? Sublime 2 【发布时间】:2012-05-29 09:45:40 【问题描述】:我很好奇是否有办法将文本粘贴到 Sublime 2 中每一行的末尾?反之,到每一行的开头。
测试线一
测试线二
测试线三
测试第四行
...
假设您在编辑器中有 100 行文本,并且您想在每行的开头和结尾粘贴引号。
有没有简单的方法或任何人都知道的插件?这通常会在各种项目上为我节省大量时间。
谢谢。
【问题讨论】:
目前这是首页的第二个demo...sublimetext.com 【参考方案1】:您可以将Search & Replace 功能与此正则表达式^([\w\d\_\.\s\-]*)$
一起使用来查找文本,替换后的文本为"$1"
。
【讨论】:
太棒了!所以我发现以下内容对我有用:使用正则表达式: (?>\x0D\x0A?|[\x0A-\x0C\x85\x2028\x2029]) 将找到每一行的结尾。并使用正则表达式: ^[a-zA-z0-9!@#$")(*&!+_-] 将找到每一行的开头(前提是为正则表达式添加所有字符以在每个开头搜索行)。谢谢@yohann! 如果您在 Vim 或 ST2 等功能强大的编辑器中使用正则表达式执行此操作,您将错过线索。为什么要把一个像样的编辑器降级为sed
?
感谢您为我节省了 3 个小时的生命【参考方案2】:
是的,Regex 很酷,但还有其他选择。
选择所有要添加前缀或后缀的行 转到菜单 选择 -> 拆分为行 (Cmd/Ctrl + Shift + L )这允许您一次编辑多行。现在您可以在每行的开头和结尾添加 *引号 (") 或任何内容 *。
【讨论】:
这很容易做到。 这是一个更好的答案。您还可以在使用鼠标选择区域时使用 shift (Windows/Linux) 或选项键 (Mac) 来获得相同的结果。 您可能经常发现自己如上所述编辑了多行,但随后又想将它们重新组合成一行。加入多行的快捷键:ctrl/cmd+J 这是一个很好的答案,但是对于非常大的行数,它可能比使用查找和替换占用更多的 CPU。 我认为这应该是首选答案【参考方案3】:这是我一直使用的工作流程,仅使用键盘
-
Ctrl/Cmd + A 全选
Ctrl/Cmd + Shift + L 分割成行
' 用引号括住每一行
请注意,如果选择中有空行,这将不起作用。
【讨论】:
在 st2 中对我不起作用,第 3 步删除了所有行并将其替换为“第 3 步应为Home
”End
"
@andrej - 这听起来像一个错误。确保您使用的是最新版本的 st2,如果是,请在 sublimetext.userecho.com 报告错误
@dbw 运行 sublime text 2.0.1 build 2217。在sublimetext.userecho.com/topic/184875- 发布为错误
@andrej 如果我在选择中有任何空白行,我可以重现您的问题【参考方案4】:
使用 column selection。列选择是 Sublime2 的独特功能之一;它用于为您提供多个匹配的游标 (tutorial here)。要获取多个游标,请执行以下操作之一:
鼠标:
按住 shift (Windows/Linux) 或选项键 (Mac) 的同时用鼠标选择一个区域。
单击鼠标中键(或滚动)也会选择一列。
键盘:
选择所需区域。 键入 control+shift+L (Windows/Linux) 或 command+shift+L (Mac)您现在选择了多行,因此您可以在每行的开头和结尾键入引号。最好利用 Sublime 的功能,只需键入 "。当您这样做时,Sublime 会自动引用所选文本。
键入 esc 退出多光标模式。
【讨论】:
也可以通过中键拖动触发列选。 这是解决问题的最具体的 Sublime Text 方法,并使用了 Sublime Text 的基本特性。当 OP 在标题中询问 Sublime Text 时,它应该是公认的答案。【参考方案5】:假设你有这些代码行:
test line one
test line two
test line three
test line four
使用 Search and Replace Ctrl+H 和 Regex 让我们找到这个:^
并替换它使用"
,我们将拥有这个:
"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 text 3 中工作得非常好,节省了大量时间【参考方案6】:-
选择要添加前缀或后缀的所有行。 (但如果您只想为特定行添加前缀或后缀,您可以使用 ctrl+鼠标左键 创建多个光标。)
按 Ctrl+Shift+L。
按 Home 键并添加前缀。
按End键并添加后缀。
注意,请禁用自动换行,否则如果您的行长于 sublime 的宽度,它将无法正常工作。
【讨论】:
这是真正的修复。 home 键和 end 键对于正常工作至关重要 在 Sublime Text 3(Mac 版)中,home 键和 end 键对我不起作用。如果您遇到此问题,请查看:coderwall.com/p/upolqw/… 不是@Phil。您也可以使用 Cmd+向左/向右箭头进行导航。我认为这同样适用于 Windows以上是关于如何将文本粘贴到每一行的末尾?崇高 2的主要内容,如果未能解决你的问题,请参考以下文章