我经常需要将一组文本条目替换为一行中的多个位置。我正在寻找使用 Sublime text 3 快速完成此操作的方法。
一个例子可能有助于解释我的意思,我在文本文件中有一个数据库名称列表:
Books Publishers Orders Customers
我想使用以下文本将“数据库名称”替换为上面的值来转换它们。
SqlCmd -E -S Server –Q "BACKUP DATABASE [database name] TO DISK='E:\Bak\database name.bak'"
因此我希望最终得到一个包含以下内容的文件:
SqlCmd -E -S Server –Q "BACKUP DATABASE [Books] TO DISK='E:\Bak\Books.bak'"
SqlCmd -E -S Server –Q "BACKUP DATABASE [Publishers] TO DISK='E:\Bak\Publishers.bak'"
SqlCmd -E -S Server –Q "BACKUP DATABASE [Orders] TO DISK='E:\Bak\Orders.bak'"
SqlCmd -E -S Server –Q "BACKUP DATABASE [Customers] TO DISK='E:\Bak\Customers.bak'"
显然有多种方法可以做到这一点,我只是想知道在 Sublime Text 3 编辑器中是否有任何简单的方法可以做到这一点。我更喜欢不使用插件的答案,但如果有一个合适的插件,那将会很有趣。
答案1
答案2
使用 Sublime-Text 列选择。这样您就可以从第一行到最后一行创建多光标。然后复制/粘贴或编写相同的行。您还可以使用 Alt 或 Control(取决于您的操作系统)在单词之间移动并选择不同长度的单词,然后复制粘贴以创建行尾。
TL; DR : 使用 Sublime-Text 列选择https://www.sublimetext.com/docs/3/column_selection.html
答案3
我没有使用 Sublime Text 完成它。
请参阅下面的 MS Excel 快照(您可以使用您选择的任何电子表格程序)。A
列包含您的数据(书籍、出版商等)。B
、C 和 D 列包含所有行中不变的静态文本。E
列包含连接字符串并给出最终输出的公式。
公式=CONCATENATE(B1,A1,C1,A1,D1