JavaScript基础回顾知识点记录4-正则表达式篇
2022/8/13 1:25:39
本文主要是介绍JavaScript基础回顾知识点记录4-正则表达式篇,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
- js 中 正则表达式使用
- 创建正则对象和test方法使用
/* 创建正则表达式的对象 语法: var 变量 = new RegExp("正则表达式","匹配模式") 或者 var 变量 = /正则表达式/ 匹配模式: i:忽略大小写 。 g:全局匹配模式 */ //var reg = new RegExp("a","i"); var reg = /a/i; var str = "1A2d3f4g6h8"; // 正则表达式的方法: test() : 检查字符串是否符合正则表达式规则,符合返回true,否则返回false console.log(reg.test(str)); //输出true
- 字符串和正则的相关方法
// split() 支持正则表达式匹配拆分字符串。该方法默认会走全局匹配。 var res = str.split(/[A-z]/); console.log(res); //输出["1", "2", "3", "4", "6", "8"] // search() 搜索字符串中是否有指定内容,不能全局匹配,只能搜索第一个符合条件的位置 var str1 = "hello abc hello aec"; var res2 = str1.search(/a[be]c/); console.log(res2); //输出6( 第一个匹配的abc的位置) /* match() 根据正则表达式,从一个字符串中将符合条件的内容提取出来。 match默认只会找到第一个符合要求的内容,需要检索全部需要改为全局匹配模式,且可以设置多个匹配模式 匹配到的内容封装到数组中保存 */ var str2 = "1a2b3c4d5e6f7C"; var res3 = str2.match(/[A-z]/gi); // gi表示全局匹配且不区分带小写 console.log(res3); //输出["a", "b", "c", "d", "e", "f", "C"] /* replace() 将字符串指定内容替换成新的内容,默认只会替换第一个 第一个参数表示: 被替换的内容,可以用正则表达式 第二个参数表示: 新的内容(替换为""的话,就是删除匹配的元素) */ var str3 = "1a2a3a4a5a"; var res4 = str3.replace("a","@@@"); var res5 = str3.replace(/a/gi,"@@@"); var res6 = str3.replace(/a/gi,""); console.log(res4); //输出[email protected]@@2a3a4a5a console.log(res5); //输出[email protected]@@[email protected]@@[email protected]@@[email protected]@@[email protected]@@ console.log(res6); //12345
- 正则语法记录
- {n} 表示出现n次;{m,n} 出现m-n次;{m,} m次以上;表示至少一次
- *表示0个或多个;?表示0个或1个
- ^表示开头;$表示结尾
- .表示任意字符
- \表示转义字符;比如查询是否含有. 则写为 /\./
- 构造函数定义正则使用转义字符\ 需要注意:var reg = new RegExp("\\.","i"); 等价于 var reg = /\./;
- 小练习:检测手机号码合法性
/* 检查手机号是否合法:1开头,第二位3-9任意数,三位之后任意数9个 */ var phone = "13583404829"; var reg2 = /^1[3-9][0-9]{9}$/; console.log(reg2.test(phone)); //输出true
- 创建正则对象和test方法使用
这篇关于JavaScript基础回顾知识点记录4-正则表达式篇的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?