JS正则表达式从入门到入土(4)—— 预定义类与边界详解编程语言
2023-06-13 09:20:36 时间
使用预定义类可以快速匹配目标,如:匹配一个ab+数字+任意字符,使用字符类、范围类需要书写大量的代码,而使用预定义类只需要这样写:
/ab/d/
正则表达式还提供了几个常用的边界匹配字符
当我们只想匹配一段话中中的部分单词而不是单词中的字母时,边界往往很有用
单词边界与非单词边界有时,我想匹配一句话中的is单词,而不想匹配在单词中的is字母,此时,使用单词边界可以轻松解决这个问题:
let text = This is a boy let reg1 = /is/g let reg2 = //bis/b/g text.replace(reg1, IS) // 没有使用单词边界/b区分,结果为:ThIS IS a boy text.replace(reg2, IS) // 使用了单词边界进行区分,结果为:This IS a boy
而当我只想匹配作为单词结尾的is时,该怎么办?此时可以机智的混用单词边界与非单词边界:
let text = This is a boy let reg3 = //Bis/b/g text.replace(reg3, IS) // ThIS is a boy^ 和 $ —— 开始与结尾
很多使用,我们会想匹配开头或结尾的字符,使用^ 和 $可以完美的解决这个问题:
let text = [email protected]@abc@ let reg1 = /@/g text2.replace(reg1, Q) // 没有使用^和$,匹配了所有的@,结果为:Q123QabcQ let reg2 = /^@/g text.replace(reg2, Q) // 使用^匹配开头的@,结果为:[email protected]@ let reg3 = /@$/g text.replace(reg3, Q) // 使用$匹配结尾的@,结果为:@[email protected]
tips:实际使用中^需要写在匹配项的前方,而$需要卸载匹配项的后方
在多行的情况下使用^和$在多行的情况下,使用m进入多行模式才能匹配到每行的开头和结尾匹配字符:
let text = [email protected]/[email protected]/[email protected] let reg1 = /^@/d/g text.replace(reg1, Q) 由于换行实际上只是一个换行符字符,在正常模式下,依然看做一段字符 结果为: Q23 @456 @789 let reg2 = /^@/d/gm text.replace(reg2, Q) 添加了m进入多行模式: 结果为: Q23 Q56 Q89 */
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/12250.html
cjava相关文章
- Fabric.js 使用纯色遮挡画布(前景色)
- html js 全局 变量,JS定义全局变量
- js 字符串转数组,js 字符串截取
- 【说站】js引擎是什么意思
- 【说站】js调用generator的方法
- Node.js学习笔记(二)——Node.js模块化、文件读写、环境变量
- js验证手机号的正则表达式_js正则表达式验证数字
- 写给后端的『js』涂鸦:向对象添加属性
- js正则表达式转义字符-【JavaScript正则表达式RegExp】
- 【JS 逆向百例】猿人学系列 web 比赛第二题:js 混淆 - 动态 cookie,详细剖析
- JS正则表达式从入门到入土(6)—— 贪婪模式与非贪婪模式详解编程语言
- JS正则表达式从入门到入土(5)—— 量词详解编程语言
- JS正则表达式从入门到入土(7)—— 分组详解编程语言
- EL表达式在JS中使用时有无双引号的区别详解编程语言
- js 整数、手机号正则表达式详解编程语言
- JS在Oracle中的应用(js如何oracle)
- 使用Oracle和JS开发新一代应用仿真世界(oracle js)
- Js&Vbs正则表达式替换重复的字符
- JS正则表达式详解[收藏]
- js常用正则表达式表单验证代码
- js对象之JS入门之Array对象操作小结
- 在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
- 重温JavaScript中的正则表达式js学习笔记
- js正则表达式之input属性($_)RegExp对象属性介绍
- 利用JQuery和JS实现奇偶行背景颜色自定义效果
- js延迟加载改变JS的位置加快网页加载速度
- 解析瀑布流布局:JS+绝对定位的实现
- js正则表达式的使用详解
- JS常用正则表达式总结
- JS将所有对象s的属性复制给对象r(原生js+jquery)
- js实现日历可获得指定日期周数及星期几示例分享(js获取星期几)
- JS获取浏览器和屏幕宽高等信息代码
- 利用js制作htmltable分页示例(js实现分页)
- node.js中的http.createServer方法使用说明
- js分页工具实例