我正在为改良的BEM设计stylelint规则,这实际上是在说不允许使用单个下划线,但是允许使用双下划线。
匹配情况:
foo__bar
不匹配的情况:
foo_bar
foo_bar__baz
(理想情况下),我不仅想要一个有效的代码段,而且还希望说明仅使用JavaScript RegEx如何最好地解决此类问题
以下是stylelint的相关文档:https://stylelint.io/user-guide/rules/selector-class-pattern/
这是一个需要通过的测试套件:https://regex101.com/r/NjwOa3/3/tests
答案 0 :(得分:3)
您可以尝试以下正则表达式。
^[^_]*_{2,2}[^_]*$
或尝试此操作仅匹配双下划线。
_{2,2}