Visual studio code 删除vscode代码段转换中的尾随逗号 我想要什么
我试图改变这一点:Visual studio code 删除vscode代码段转换中的尾随逗号 我想要什么,visual-studio-code,vscode-snippets,Visual Studio Code,Vscode Snippets,我试图改变这一点: foo awehorihawolvbahvierwba3485y089726y216 bar :aw]\e[;r\a32[5a94t8g-09po 为此: foo, bar 问题 我目前的解决方案是删除“垃圾”并用逗号替换: $1 ${1/(\\w+).*/$1,/gm} 但是,这会留下一个尾随逗号,我发现每次删除尾随逗号都很烦人 foo, bar, 我试过的 接受原始想法,并将其嵌入此转换中 ${<insert transform here>/,$//
foo awehorihawolvbahvierwba3485y089726y216
bar :aw]\e[;r\a32[5a94t8g-09po
为此:
foo,
bar
问题
我目前的解决方案是删除“垃圾”并用逗号替换:
$1
${1/(\\w+).*/$1,/gm}
但是,这会留下一个尾随逗号,我发现每次删除尾随逗号都很烦人
foo,
bar,
我试过的
接受原始想法,并将其嵌入此转换中
${<insert transform here>/,$//}
... like this ...
${${1/(\\w+).*/$1,/gm}/,$//}
${/,$/}
... 这样地。。。
${${1/(\\w+).*/$1,/gm}/,$/}
您似乎在触发代码片段,然后将文本粘贴到其中,因为您只使用$1
作为输入。如果不是这样,请让我们知道,可能很容易为选择修改此选项,等等
这将有助于:
"add a comma only if": {
"prefix": ["py"], // whatever prefix you want
"body": [
"${1/(\\w+).*(?=$(\r?\n)?)/$1${2:+,}/gm}"
// "${1/(\\w+).*$(\r?\n)?/$1${2:+,\n}/gm}" // this also works
]
},
它适用于任意数量的输入行,在每个输入行的末尾加逗号,最后一行除外
(?=$(\r?\n)?)
换行的正向前瞻,如果是,则在组2中捕获${2:+,}
如果是组2,请添加逗号
谢谢!这太完美了:)我希望我能投1000张赞成票,这样可以节省我很多时间,有一天你可以;>}我在上面加了一点简化。如果在条件转换中加入换行符,则实际上不需要积极的前瞻。事实上也差不多。