记事本 + + 多重编辑

如何在记事本 + + 中使用多个光标?

我将有一对制表符分隔的值。我需要为所有这些值编写一个查询。例如,如果我得到一个具有如下值的 Excel 文件:

1234 xyz pqr
2345 sdf kkk
...

我想将这整个数据复制到 Notepad + + 中并编写查询,同时插入所有值。

像这样:

Insert into tbl (1234, xyz) where clm = 'pqr'
Insert into tbl (2345, sdf) where clm = 'kkk'
...

我过去常常用我以前的文本编辑器 Ultraedit 来做这件事。这可以用记事本 + + 来做吗?

186870 次浏览

可以使用 Edit > Column Editor...在当前行和以下行插入文本。快捷方式是 Alt + C

是: 只需按住 Alt键,单击并拖动以选择您希望编辑其列的行,然后开始输入。

您还可以转到 设定 > 参数选择..。,并在 剪辑选项卡中打开多重编辑,以便能够选择多个单独的区域或文本列,以便同时进行编辑。

它更加直观,因为你可以看到你的编辑生活,你打字。

记事本 + + 只有列编辑功能。这与多个游标不完全一样。

崇高文本有一个了不起的实现,可能值得一看..。
这是一个相对较新的编辑(2011年) ,正在迅速流行起来: Http://www.google.com/trends/explore#q=notepad%2b%2b%2c%20sublime%20text&cmpt=q

编辑: 显然在 Notepad + + 版本6.x 的某个地方增加了多光标编辑功能,但是在 Sublime 中仍然有一些更高级的功能,比如“选择下一次出现”。

您可以使用控制按钮在多行上添加/编辑内容。这是记事本 + + 中的多重编辑功能,我们需要从设置中启用它。按住控制键,选择您想要输入文本的位置,释放控制键并开始键入,这将在以前选择的所有位置更新文本。

enter image description here

裁判: https://cathrinewilhelmsen.net/2015/12/03/notepad-multi-editinghttps://npp-user-manual.org/docs/editing/#multi-editing

Notepad + + 有一个强大的正则表达式引擎,能够随意搜索和替换模式。

在你的场景中:

  1. 单击菜单项 Search Replace..。

  2. 用搜索模式填充“ Find what”字段:

    ^(\d{4})\s+(\w{3})\s+(\w{3})$
    
  3. Fill the replace pattern:

    Insert into tbl (\1, \2) where clm = \3
    
  4. Click the Replace All button.

And that's it.

NotePad++ replace window screenshot

解决问题的最简单方法(不需要使用其他编辑器或学习正则表达式)是记录一个宏。< br > < ul >

  • 将光标放在文本的开头,单击色带中的“记录”按钮,然后只编辑那一行文本。只能使用箭头键或 ctrl + 箭头键移动字符/单词,而不能用鼠标单击。“ home”和“ end”键也很有用。
  • < li > 完成这一行后,将光标(同样不使用鼠标)移动到下一行的开始。 < li > 点击“停止录制”按钮 单击“播放宏”按钮,检查它是否在下一行上正常工作。 < li > 单击“多次运行宏”再次执行此操作,再次执行,再次执行... : P 与“多次编辑”游标相比,这种方法的一个优点是您不必手动在每一行上单击并放置游标。第二个优点是,您可以处理没有一致大小/长度的制表符分隔的数据——只需使用 ctrl + left/right 来跳过单词。< br > < br > 老实说,N + + 中的宏节省了我一年的时间。

    记事本 + + 现在还可以处理多个光标。

    进入设置 = > 首选项 = > 编辑,并在“多重编辑设置”中选择“启用” 然后,使用 Ctrl + click 来使用多个游标。

    官方网站上的特色演示 : < a href = “ https://npp-user-manual.org/docs/edit/”rel = “ noReferrer”> https://npp-user-manual.org/docs/editing/

    在要添加文本的位置,执行以下操作:

    Shift + Alt + down arrow

    然后选择你想要的线条。然后打字。键入的文本将插入到所选的所有行上。

    您可以使用 ConyEdit 插件来完成这项工作。 在后台运行 ConyEdit 时,请执行以下步骤:

    1. 使用命令行 cc.spc /\t/ a将文本分割成列,并将其存储在一个双模数组中。
    2. 使用命令 cc.p打印,使用数组的内容。