jQuery正则表达式选择器不';行不通

jQuery正则表达式选择器不';行不通,jquery,regex,jquery-selectors,Jquery,Regex,Jquery Selectors,我需要通过id正则表达式获取一些元素。我找到了一些解决方案: 每个人都声称它工作正常,但当我尝试运行简单代码$(':regex[id,^node\-[0-9]+\-[0-9]+$])时,我在匹配[3]时遇到一个错误。拆分为该方法不存在。事实上,我已经在这个函数的第一行添加了console.log(match),我得到了: [“:regex”,“regex”,未定义,未定义,索引:0,输入:“:regex[id,^node-[0-9]+-[0-9]+$”] 我做错了什么?您使用了[]而不是()来指

我需要通过id正则表达式获取一些元素。我找到了一些解决方案:

每个人都声称它工作正常,但当我尝试运行简单代码
$(':regex[id,^node\-[0-9]+\-[0-9]+$])
时,我在匹配[3]时遇到一个错误。拆分为该方法不存在。事实上,我已经在这个函数的第一行添加了console.log(match),我得到了:

[“:regex”,“regex”,未定义,未定义,索引:0,输入:“:regex[id,^node-[0-9]+-[0-9]+$”]


我做错了什么?

您使用了
[]
而不是
()
来指定正则表达式

$(':regex(id,^node\-[0-9]+\-[0-9]+$)')
演示:


我还建议将它与其他一些更快的选择器(如类选择器或元素选择器)一起使用,或者至少使用属性exists筛选器(如$('[id]:regex(id,^node-[0-9]+-[0-9]+$))

“我需要通过id regex获取一些元素。”–您能更具体一点吗?这里有什么不清楚的吗?我有一个id与特定模式匹配的元素,需要使用jquery访问它……我知道这不是很有效,但在这种特定情况下,它是我最好的方法。
$(':regex(id,^node\-[0-9]+\-[0-9]+$)')