我正在使用PHP并尝试捕获所有ID& jQuery的选择器中的类如:
$('#ddd .aaa #bbb #c').show();
test.$('#eee[type=submit] .fff').addClass('test')
但my regex会抓住'.jpg','。png'.. url,现在我有了另一个想法
“任何类名或ID”前面都必须有$('
个符号“
(因此它不会捕获任何URL链接或十六进制代码)
-
\$\('((?:\.|#)([_a-zA-Z]+[_a-zA-Z0-9-]*))(?=[^\(]*\))
但它只能抓住第一场比赛
#ddd
#eee
如何获得每个类名称或ID:
#ddd
.aaa
#bbb
#c
#eee
.fff
并保留(或重复?)规则:字符串前面必须有$('
个符号。
-
答案:
此正则表达式将搜索$()
,.find()
,.prependTo()
,.closest()
,
因此您需要手动添加更多选择器:
/(?:(?:\$|\$_|\.(?:find|prependTo|closest))\(\'|(?<!^)\G)\s?([.#][-\w]+)?[^()\s.#]*(?=[^()]*\))/gm