【发布时间】:2013-01-25 02:37:13
【问题描述】:
应用这个正则表达式模式:
/(?:(^| |\>|\+))+([a-z\-\_]+)/gi
到这个字符串:
body.test ol+li ol > li #foobar p>span a[href=*]
我得到这些匹配,逗号分隔:
body, ol,+li, ol, > li, p,>span, a
为什么有些匹配有前导空格、> 和+ 符号?我希望我的正则表达式 (?:(^| |\>|\+)) 的这一部分与这些标志匹配,但不捕获它们。
编辑:我正在尝试匹配有助于 css 选择器的 css 特异性的 html 标记和 css 选择器。因此,我想单独匹配每个li 或span 等等,而不需要+ 或>。
【问题讨论】:
标签: javascript regex css-selectors pattern-matching