1

我正在尝试从样式表中的任何 CSS 规则中过滤输入选择器(使用 javascript),但无法编写返回该规则中所有元素的正则表达式。我对javascript很好,但我不确定如何构建正确的正则表达式。

例如,从以下内容:

input, #testDiv input, div.test, input[type=radio] {
    width: 50px;
}

我需要返回input,如果可能#testDiv inputinput[type=radio]话(或者我可以修剪的接近的东西)。

任何知道他们的正则表达式的人都可以给我一些关于如何去做的见解吗?

4

1 回答 1

0

对于 CSS 文件的每一行,试试这个正则表达式:

r = new RegExp('[^,}]*input[^,{]*', 'g')

示例:http: //jsfiddle.net/8DRMz/1/

这个怎么运作:

带有inputcan 的选择器包含不同的符号,但新选择器总是以换行符开头,在“,”或“}”之后。选择器也总是以“,”或“{”结尾。因此,我们使用除“,}”之外的任何附加符号和除“,{”之外的任何附加符号来寻找“输入”。

于 2012-11-22T11:49:07.237 回答