创建Javascript RegEx以验证带连字符的BEM和camelCase

时间:2017-05-11 10:27:47

标签: javascript regex camelcasing bem css-hyphens

我有这个Regex用于检测CSS文件中的hyphenatedBEM

^([\.\%]?[a-z]*[-]?[a-z0-9\-]*)(\.[a-z0-9\-]*)?(__[a-z0-9]*[-]?[a-z0-9\-]*)?(--[a-z0-9]*[-]?[a-z0-9\-]*)?(\:[a-z]*)*$

但我也希望它能够检测到CamelCase ...

我需要这样做,因为我们正在从hyphenatedBEM转换到camelCase

简而言之,我如何编写一个检查

的正则表达式
^([\.\%]?[a-z]*[-]?[a-z0-9\-]*)(\.[a-z0-9\-]*)?(__[a-z0-9]*[-]?[a-z0-9\-]*)?(--[a-z0-9]*[-]?[a-z0-9\-]*)?(\:[a-z]*)*$

or

\.[a-z][a-z0-9]*[A-Z][a-z0-9]*[A-Z][A-Z0-9]*[a-z][A-Za-z0-9]*

如果两者均未验证,则表示错误/返回false

我会像下面那样对CSS进行验证,两者都应该验证为正常......

.error__404 { ...SOME CSS CODE... }   --> this is correct
.error__404--red { ...SOME CSS CODE... }   --> this is correct
.userImage { ...SOME CSS CODE...}   --> this is correct
.this-is-not-correct { ...SOME CSS CODE...}   --> this is not correct

非常感谢任何帮助......

0 个答案:

没有答案