神奇的JavaScript之正则
今朝在技术群里,碰到有人问这样一个问题:使用正则去掉字符串中相邻的重复字符,比如字符串"ddssssaaaadkslsls",去除相邻重复字符后,结果为"dsadksls"。
仔细琢磨后,我的实现是这样的:
1 'ddssssaaaadkslsls'.replace(/(\w+?)(?:\1+)/g, '$1');//运行结果为dsadksls
这里涉及到正则表达式的知识点有:分组、反向引用、非捕获分组(貌似是这样称呼)、懒惰匹配、全局模式。对于具体知识点描述,本文不会在此赘述,有兴趣的客官可以翻阅<JavaScript权威指南>。
如上题算是较简单字符串处理功能,但不用正则表达式的话,逻辑就会变得相当复杂,倘若各位闲得蛋疼可试着去实现。
JQuery源码的选择器(selector)实现就使用大量复杂正则表达式,有很多我至今还没弄明白,到时抽空回去看看后再写篇读后感。
posted on 2013-10-10 14:11 shiny_bender 阅读(177) 评论(0) 编辑 收藏 举报
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步