JavaScript正则表达式—— 【小案例】去除前后空格、获取CLASS名称

本文探讨了如何利用正则表达式进行DOM节点的筛选与操作,重点介绍了正则表达式/^s*|s*$/g的作用及局限性,即仅去除节点类名前后空白字符而不影响中间空白字符的技巧。通过具体步骤说明了如何选取页面上的所有DOM节点,以及如何使用正则表达式匹配特定类名的节点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前后有空格:

把前后空格替换为“空”

但是为什么只去掉了左边的空格呢?
原因在于:没有使用全局

如果中间有空格,那么不能去掉

因为,我们写的正则/^\s*|\s*$/g表示开始/结束有空格,添加全局,找前后,不涉及中间的。

步骤:
1》把页面上所有的dom节点,全部选取
2》循环所有节点,if判断,如果页面上节点的className==lis
3》把节点添加到数组中

但是应该弹出两个才正确,这里我们可以用正则来做:
步骤:
1》把页面上所有的dom节点,全部选取
注意:用正则的时候,需要看lis左边和右边都有边界,并且不能使用字面量形式,必须使用构造函数的形式。
2》循环所有节点,if判断,如果reg.test(doms[i].className) 匹配
3》打印length,返回arr数组

如果给它添加一点背景颜色样式:(赋一个变量)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值