我正在尝试从样式表中的任何CSS规则中过滤输入选择器(使用javascript),但无法编写返回该规则中所有元素的正则表达式。我对javascript很好,但我不确定如何构建正确的正则表达式。
例如,来自以下内容:
input, #testDiv input, div.test, input[type=radio] {
width: 50px;
}
如果可能的话,我需要返回input
,#testDiv input
和input[type=radio]
(或者我可以减少的东西)。
知道他们的regEx的人能否给我一些关于如何去做的见解?
答案 0 :(得分:0)
对于每行CSS文件,请尝试使用此正则表达式:
r = new RegExp('[^,}]*input[^,{]*', 'g')
示例:http://jsfiddle.net/8DRMz/1/
工作原理:
带有input
的选择器可以包含不同的符号,但新选择器始终以换行符开头,在“,”之后或“}”之后。选择器也始终以“,”或“{”结尾。所以我们使用除“,}”之外的任何前置符号以及除“,{”之外的任何附加符号来“输入”。