在 vscode 个片段中编写几个正则表达式

Compose couple of regular expression in vscode snippets

我正在尝试根据文件名构建 vscode 片段。例如:从文件 first.actions.ts 我正在通过 const ${TM_FILENAME_BASE/(.*?).actions/${1:/capitalize}/g} = 42;.

生成 First = 42;

但是如果文件名是例如first-module.actions.ts 我正在生成 First-Module = 42; 并且此代码包含语法错误。我要 const FirstModule = 42;.

我正在寻找一些技巧来合并正则表达式以切割 .actions 并删除所有 - 标记。

尝试:

"const ${TM_FILENAME_BASE/([^-]*)-?(.*)\.actions/${1:/capitalize}${2:/capitalize}/g} = 42;"

  1. 捕获第一个 -

  2. 之前的所有内容
  3. 忽略可选的 -

  4. .actions
  5. 之后捕获任何内容

假设你想要 first-module.actions.ts => FirstModule

请注意您的扩展分隔符 . 应该是 double-escaped 才能正常工作。