Visual studio code VS代码:如何将代码段占位符转换为大写或小写?

Visual studio code VS代码:如何将代码段占位符转换为大写或小写?,visual-studio-code,vscode-snippets,Visual Studio Code,Vscode Snippets,在VS代码中,用于创建的文档提到了一些选项,包括/upcase、/downcase和/capitalize,但我不知道如何使用它 我正在Mac上使用最新版本的VS代码:version 1.25.0 似乎在键入占位符并点击tab键后,此代码段应该将占位符的值转换为大写和小写,但它没有: "test": { "prefix": "test", "body": "${1} -> ${1:/upcase} ${1:/downcase}" }, 流程和预期结果 类型test 点击t

在VS代码中,用于创建的文档提到了一些选项,包括/upcase/downcase/capitalize,但我不知道如何使用它

我正在Mac上使用最新版本的VS代码:version 1.25.0

似乎在键入占位符并点击tab键后,此代码段应该将占位符的值转换为大写和小写,但它没有:

"test": {
    "prefix": "test",
    "body": "${1} -> ${1:/upcase} ${1:/downcase}"
},
流程和预期结果
  • 类型
    test
  • 点击tab以获取代码段
  • 键入
    Asdf
    ,以导致:

    Asdf -> Asdf Asdf
    
  • 点击tab以获得以下操作的预期结果:

    Asdf -> ASDF asdf
    
  • 当前结果 供参考:

    EBNF文档中的整数指的是RegExp组,而不是tabstop引用,因此应该工作:

    "test": {
        "prefix": "test",
        "body": "${1} -> ${1/(Asdf)/${1:/upcase}/} ${1/(Asdf)/${1:/downcase}/}"
    }
    
    试试这个:

    "test": {
        "prefix": "test",
        // "body": "${1} -> ${1/(.*)/${1:/upcase}/} > ${1/(.*)/${1:/downcase}/}"
        // simpler version below works too
        "body": "${1} -> ${1/(.*)/${1:/upcase} ${1:/downcase}/}"
    }
    
    您需要点击Tab以应用转换。

    请参阅手册的
    片段部分。

    解决方案类型:

      "test": {
        "prefix": "test",
        "body": "$1 ${1/(.*)/${1:/upcase}/}  ->  ${1/(.*)/${1:/downcase}/}  ->  ${1/(.*)/${1:/capitalize}/}"
      }
    
    结果:

    asdF ASDF  ->  asdf  ->  AsdF
    

    谢谢你的回答。这对我来说是可行的,但我接受了另一个答案,因为它适用于任何字符串,而不仅仅是“Asdf”的示例文本。接下来的问题:你知道有没有一种方法可以使用片段将camelCASE字符串转换为尖叫蛇字符串?找到了这个,但是这些例子不起作用:来自的输入与您对当前问题的输入非常不同。所以我不确定你所说的“例子不起作用”是什么意思?对不起。是的,这些例子就是如此。当我试图使用该示例更新占位符时,我无法让它们工作。创建了一个新问题来澄清我对代码段的另一个需求:有时,当您点击
    选项卡时,您可能会无意中选择不同的intellisense选项,而不是此代码段。我不会使用
    test
    作为真正的前缀-这是OP仅用于测试目的的前缀。它现在内置于VS代码中,自。如果用户更新了VS代码,是否需要运行此前缀?我的VS代码版本为1.53.0。您需要首先将此代码段保存到代码段文件,然后才能将其作为常规代码段使用。
    asdF ASDF  ->  asdf  ->  AsdF