jQuery技术:jQuery过滤函数regexp

有人可以解释为什么我的元素没有过滤?

这是在书中写的,他很遗憾如果将删除false元素并将显示带有true的元素:

$('li').filter(function() { return this.innerHTML.match(/^d+$/)}) 

我只需要用14.15过滤li(我希望结果只有14.15)!

https://jsfiddle.net/crew1251/MYXYX/

 
  • raz
  • asdf 14.15
  • tri
  • chetire_Tri
  • pyat
$('li').filter(function () { return this.innerHTML.match(/^d+$/); });

    如果要查找包含数字的li ,则应执行以下操作

     var listWithDigits = $('li').filter(function () { return this.innerHTML.match(/d+/); // return this.innerHTML.match(/d+$/); // returns lis that end with digits // return this.innerHTML.match(/^d+/); // returns lis that start with digits // return this.innerHTML.match(/^d+$/); // returns lis that contain only digits }); console.log(listWithDigits.length); // 1 

    您当前的正则表达式失败,因为它只接受仅包含数字的li ,因为您已使用^$包装正则表达式

    您使用错误的模式,您必须删除锚点:

     $('li').filter(function () { return $(this).html().match(/d/); }); 

    请注意,您不需要测试多个数字,因此+量词是无用的。

      以上就是jQuery教程分享jQuery过滤函数regexp相关内容,想了解更多jQuery开发(异常处理)及jQuery教程关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/jquerytutorial/548184.html

      (0)
      上一篇 2021年1月13日
      下一篇 2021年1月13日

      精彩推荐