js-16正则表达式
01.正则表达式引入
作用: 字符串操作,如字符匹配,字符查找,字符替换操作时,使用正则表达式可以简化实现
含义:某种模式去匹配一类字符串的公式
/**用正则代替写法的案例* 已知字符串如下:* Dgfhfgh254bhku289fgdhdy675gfh* 要求:匹配字符串中数字字符,返回数组中,如: [254,289,675]* 思路:* 1.遍历字符串* 2.判断当前字符是否是数字字符,* 如果是拼接成字符串 254* 否则判断拼接字符串是否为空,不为空,存储到数组中,* 清空拼接字符串,重复上述操作*/function test1() {let str = 'Dgfhfgh254bhku289fgdhdy675gfh'let arr = []let line = ''//1. 遍历字符串for (let i = 0; i < str.length; i++) {let chars = str.charAt(i) //获取字符串//2.判断当前字符是否是数字字符if(chars > '0' && chars < '9'){//如果是拼接成字符串line = line + chars}else{// 否则判断拼接字符串是否为空if(line != ''){arr.push(line) line = ''//清空拼接字符串}}}console.log(arr);}// test1()function test2(){let str = 'Dgfhfgh254bhku289fgdhdy675gfh'let reg = /\d+/g //正则表达式let arr = str.match(reg)console.log(arr);}test2()
02.正则表达式对象
正则表达式数据类型:RegExp
创建方式:1.构造函数let reg = new RegExp(正则表达式模式)2.字面量let reg = /正则表达式模式/
03.正则常用方法
1. 正则.test(字符串)返回值:true | false
2.字符串.search(正则)返回值:索引号 | -1
3.字符串.match(正则)返回值:数组 | null
4.字符串.replace(正则,‘新字符’)返回值:替换成功后的新字符串
04.正则字符(开发工作中去网上搜模板)
1.普通字符: 意义本意 0-9 a-z...
2.常用元字符 元字符: 特定意义匹配所有数字\d \D 非匹配字母,数字,汉字,下划线\w\W 非空白符\s\S 非换行符以外字符.匹配方括号任意字符[ab][^ab]
3.连接符 - [0-9] [a-z] [0-9a-zA-Z]
4.限定符 - 量词+ 至少1次* 任意次数? 0或1次{m} m次{m,} 最少m次{m,n} m到n次
5.定位符 -边界^ 字符开始 $ 字符结束\b 单词开始结束 \bis\b
6.修饰符 g 全局搜索 i 忽略大小写
7.转义符. 换行符以外字符\. 点号\n 换行\' 单引号
8.选择符 |[1|2]
05.优先级顺序
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F0laoU1M-1669704188472)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\1648457969780.png)]
工具网站
REGEXPER 理解正则的网站
\' 单引号
8.选择符 |
[1|2]
# 05.优先级顺序[外链图片转存中...(img-F0laoU1M-1669704188472)]工具网站REGEXPER 理解正则的网站
js-16正则表达式相关推荐
- js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr)...
js进阶正则表达式15验证身份证号(|符号的使用:var reg=/^\d{17}[\d|X]$|^\d{15}$/)(str的方法substr) 一.总结 1.|符号的使用:var reg=/^\d ...
- js进阶正则表达式方括号(方括号作用)(js正则是在双正斜杠之中:/[a-z]/g)...
js进阶正则表达式方括号(方括号作用)(js正则是在双正斜杠之中:/[a-z]/g) 一.总结 方括号:范围 圆括号:选 大括号:数量 1.js正则是在双正斜杠之中: var reg2=/[a-z]/ ...
- js进阶正则表达式14验证邮编(input的pattern属性)(正则表达式加起^始$)
js进阶正则表达式14验证邮编(input的pattern属性)(正则表达式加起^始$) 一.总结 1.input的pattern属性:里面可以直接放正则表达式,<input type=&quo ...
- js进阶正则表达式10-分组-多行匹配-正则对象的属性(小括号作用:分组,将小括号里面的东西看成一个整体,因为量词只对前一个字符有效)(多行匹配:m)(属性使用:reg.global)...
js进阶正则表达式10-分组-多行匹配-正则对象的属性(小括号作用:分组,将小括号里面的东西看成一个整体,因为量词只对前一个字符有效)(多行匹配:m)(属性使用:reg.global) 一.总结 1. ...
- 收集的JS常用正则表达式等
// 短日期,形如 (2003-12-05) function strDateTime(str) { var r = str.match(/^(d)(-│/)(d)2(d)$/); if(r==n ...
- 收集的JS常用正则表达式等(转载)
// 短日期,形如 (2003-12-05) function strDateTime(str) { var r = str.match(/^(d)(-│/)(d)2(d)$/); if( ...
- JS的正则表达式[收藏]
JS的正则表达式 //校验是否全由数字组成 代码 function isDigit(s) { var patrn=/^[0-9]{1,20}$/; if (!patrn.exec(s)) return ...
- 史上最详细的js日期正则表达式分享
最简单的正则 如 : /d{4}-/d{2}-/d{2} 但是实际情况却不是那么简单,,要考虑,有效性和闰年等问题..... 对于日期的有效范围,不同的应用场景会有所不同.MSDN中定义的DateTi ...
- js RegExp正则表达式常见用例
js RegExp正则表达式常见用例 判断输入是否为数字.字母.下划线组成 判断字符串是否全部为字母 判断字符串是否全部为数字 判断是否带有小数 判断是否中文名称组成 判断手机号 判断身份证 判断验证 ...
- 重新拎一遍js的正则表达式
前言 js的正则表达式是前端中比较重要的部分,加入你要去面试,正则的题目必不可少.我之前的这篇文章中提及过.具体可以看:http://www.haorooms.com/post/qianduan_mi ...
最新文章
- 一位大厂程序员回老家当公务员了!
- PostgreSQL系统表和视图
- Vue使用vue-pull-refresh插件实现下拉刷新
- 前端js实现字符串/图片/excel文件下载
- Git 常用操作 | 重写 commit 历史
- 作者:陈维政,男,北京大学博士生。
- 信息学奥赛一本通 2062:【例1.3】电影票
- php网站用框架与不用的区别,做前端网页是不是必须要用网页框架
- JavaScript文件存储信息对象cookie编码生存期
- 【2018-2019-1】20165223-20165218 实验二 固件程序设计
- Linux errno的含义【转】
- 传统音乐制作与计算机音乐制作,论电脑音乐制作与传统音乐制作的方式对比
- nyoj107hdu A Famous ICPC Team
- windows server 2008 关机后安装自动更新,反复启动,不能进入系统
- 百度市值要被京东超越了?你投百度还是京东?
- 2021-07-15-2021年全球10大最佳单板计算机开发板(SBC)(第1-3名)
- python操作redis-sentinel集群
- 如何注册电子邮箱账号,教你创建email邮箱账号
- 爆强的一些文句, 太经典了
- 从年薪1万到年薪100万的日子