我想将snake_case和PascalCase命名约定结合起来。因此,声明一个class的名称必须严格符合的格式:Pascal_Snake、Pascal_Snake_Pascal_Etc、OnlyPascal、Pascal。
这就是我在我的esling.config里想做的
"@typescript-eslint/naming-convention": [
{
selector: "class",
format: null,
custom: {
regex: "([A-Z]\\w*_?[A-Z]\\w+)|([A-Z]\\w*[A-Z]?\\w+)",
match: true,
},
},
]不幸的是,这个regex并不严格。我想要的是:
_之后,必须始终至少有一个大写字母。_,则必须根据PascalCase格式命名类。怎么弄到?
发布于 2021-12-28 15:34:15
使用\w可以匹配大小写字符和_
在可选重复组中匹配大写字符A之前,可以匹配可选下划线。
(如果需要,请注意双转义反斜杠。)
\b[A-Z][a-z]*(?:_?[A-Z][a-z]*)*\b如果不想匹配单个A或AA,则可以重复小写字符1+时间。
\b[A-Z][a-z]+(?:_?[A-Z][a-z]+)*\bhttps://stackoverflow.com/questions/70509132
复制相似问题