正则表达式使用javascript和/或jQuery测试(或匹配)对象及其同级

正则表达式使用javascript和/或jQuery测试(或匹配)对象及其同级,javascript,jquery,regex,match,siblings,Javascript,Jquery,Regex,Match,Siblings,使用javascript和/或jQuery,如何测试/匹配对象及其所有同级?我不是程序员,所以对我放松点。提前感谢。:) 下面是您在测试结束时如何将测试推广到sSplitTags的所有元素: var showIt = true; $.each(sSplitTags, function(i, tag) { re = new RegExp(tag); if (!re.test(sValues)) { showIt = false; break; } }); $(this)

使用javascript和/或jQuery,如何测试/匹配对象及其所有同级?我不是程序员,所以对我放松点。提前感谢。:)


下面是您在测试结束时如何将测试推广到sSplitTags的所有元素:

var showIt = true;
$.each(sSplitTags, function(i, tag) {
  re = new RegExp(tag);
  if (!re.test(sValues)) {
    showIt = false;
    break;
  }
});
$(this).parent().toggle(showIt);

假设
sSplitTags
是一个字符串数组或对象,那么
sValues
是什么?一个RegExp对象没有任何同级,因为它不是HTMLDOM的一部分。为什么不试着解释一下您要完成什么,因为在描述如何完成时,您显然有些困惑。顺便说一句,传递给
$的函数。每个
都会获得第二个参数,该参数是数组的元素,因此您可以使用该参数而不是
sSplitTags[i]
@shhac,我在代码中添加了该参数以显示如何派生sValues。如果改用match,它会保留在DOM中吗?谢谢你的帮助。@Barmar,如果我不清楚,我道歉。我试图测试数组中的每个项及其同级项的相同条件;只有DOM中的元素才有同级。请描述您的应用程序正在尝试做什么,而不是如何尝试。感谢您抽出时间帮助我完成这项工作。break语句抛出错误,但可以使用return false。这是我最后用的<代码>代码
$。每个(sSplitTags,function(i,tag){var re=new RegExp(tag,'i');if(!(re.test(sValues)){show=false;//警报('no match');返回false;}否则{show=true;//警报('match');});如果(show==false){$(this.parent().hide();}否则{$(this.parent().show();}
code
var showIt = true;
$.each(sSplitTags, function(i, tag) {
  re = new RegExp(tag);
  if (!re.test(sValues)) {
    showIt = false;
    break;
  }
});
$(this).parent().toggle(showIt);