正则表达式用于css规则中的“输入”

时间:2012-11-22 11:22:39

标签: regex css-selectors

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

例如,来自以下内容:

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

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

知道他们的regEx的人能否给我一些关于如何去做的见解?

1 个答案:

答案 0 :(得分:0)

对于每行CSS文件,请尝试使用此正则表达式:

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

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

工作原理:

带有input的选择器可以包含不同的符号,但新选择器始终以换行符开头,在“,”之后或“}”之后。选择器也始终以“,”或“{”结尾。所以我们使用除“,}”之外的任何前置符号以及除“,{”之外的任何附加符号来“输入”。