gpt4 book ai didi

powershell - 将字符串行放入 "array"

转载 作者:行者123 更新时间:2023-12-03 00:41:46 24 4
gpt4 key购买 nike

我在 VSCode 中经常有几行字符串,但需要一个用于 PowerShell 或 SQL 的数组。

我在 VSCode

line1
line2
line3

我在 Vscode 中需要类似的东西
('line1','line2','line3')

导致
Select * from Table where Column in ('line1','line2','line3')

或者
$a = 'line1','line2','line3'

有这个功能/扩展吗?

最佳答案

array build demo你可以制作一个很容易做到这一点的片段。添加一个键绑定(bind)以在 keybindings.json 中触发该片段:

{
"key": "alt+b", // or whatever keybinding you want
"command": "editor.action.insertSnippet",
"args": {
"snippet": "(${TM_SELECTED_TEXT/\\s*(.+)(\\s)?/'$1'${2:+,}/g})"
}
}
${TM_SELECTED_TEXT/\\s*(.+)(\\s)?/'$1'${2:+,}/g}获取选定的文本。
正则表达式将获取捕获组 1 中每一行的文本,以及捕获组 2 中的任何换行符。

然后 'group 1'添加后跟 ,仅当存在组 2。因为 g正则表达式标志这将发生在所有行。

如果您希望在输出中将空行表示为空字符串,请使用
  "snippet": "(${TM_SELECTED_TEXT/((.+)(\\r\\n))|(.+)|(\\r\\n)/'$2$4'${3:+,}${5:+,}/g})"

演示:

empty lines demo

如果你想要这个片段的输出:
Select * from Table where Column in ('line1','line2','line3')
然后使用:
"snippet": "Select * from Table where Column in (${TM_SELECTED_TEXT/\\s*(.+)(\\s)?/'$1'${2:+,}/g})"

关于powershell - 将字符串行放入 "array",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60372181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com