什么是正则表达式,可以用来验证CSS选择器,并且可以通过无效选择器快速停止的方式来进行验证。

有效选择器:

EE
#myid
.class
.class.anotherclass
EE .class
EE .class EEE.anotherclass
EE[class="test"]
.class[alt~="test"]
#myid[alt="test"]
EE:hover
EE:first-child
E[lang|="en"]:first-child
EE#test .class>.anotherclass
EE#myid.classshit.anotherclass[class~="test"]:hover
EE#myid.classshit.anotherclass[class="test"]:first-child EE.Xx:hover


无效的选择器,例如在行尾包含多余的空格:

EE:hover   EE
EE .class EEE.anotherclass
EE#myid.classshit.anotherclass[class="test"]:first-child EE.Xx:hov     9
EE#myid.classshit.anotherclass[class="test"]:first-child EE.Xx:hov  -daf

最佳答案

正则表达式是错误的工具。 CSS选择器很复杂。
例:

bo\
dy:not(.\}) {}


将解析器与像这样的真实标记器一起使用:PHP-CSS-Parser。与正确使用正则表达式相比,将其重写为Java更容易。

关于java - 验证CSS选择器的正则表达式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3835114/

10-09 18:59