kebab-case到带有正则表达式的PascalCase

时间:2019-02-12 10:27:08

标签: regex

我正在研究VSCode中的自定义代码。现在,我想将kebab-case文件名转换为PascalCase。我该如何实现?

这是我到目前为止所拥有的:

${TM_FILENAME_BASE/[^0-9^a-z]//gi}

这需要我的文件名,例如quantity-change.js并将其转到quantitychange

但是我想要的是QuantityChange

我该怎么做?

1 个答案:

答案 0 :(得分:1)

您可以使用

"Filename to PascalCase": {
        "prefix": "tm_",
        "body": [
            "${TM_FILENAME_BASE/(?:^|-)([a-z])|/${1:/upcase}/g}"
        ],
        "description": "Convert filename from kebab-case to PascalCase."
    }

(?:^|-)([a-z])模式匹配字符串的起始位置(^或(|)连字符,然后匹配并将第一个小写ASCII字母({{1 }})。然后,替换部分中的([a-z])获取在组1中捕获的值并将其转换为大写。

您可能会看到more about VSCode snippet creation hereexample section很有帮助)。