2017-05-11 15 views
0

我有这样的正则表达式在CSS文件创建的Javascript正则表达式来验证复姓BEM和驼峰

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

检测hyphenatedBEM,但我也想它来检测首字母大写,以及...

我需要这样做是因为我们从hyphenatedBEM过渡到驼峰

总之,我怎么写检查

^([\.\%]?[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

IM在正则表达式的专家,但你不能只在'[]'结合了正则表达式? –

+0

输入和预期输出...? – ClasG

+0

输入将是一个SCSS文件,其中包含**。block__element - 修饰符**和另一个SCSS文件包含**。驼峰**和两个文件验证 – Takuhii

回答