| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> JavaScript知识库 -> 关于JavaScript中正则表达式的零零碎碎。 -> 正文阅读 |
|
[JavaScript知识库]关于JavaScript中正则表达式的零零碎碎。 |
目录 ? 正则表达式? ? ? ? 如何定义:描述字符模式的对象。 相关应用? ? ? ? 1.表单中,对用户输入的信息进行格式的校验。比如,用户名,密码,手机号是否符合规范。 ? ? ? ? 2.从字符串中获取一部分符合规则的内容。 如何创建??????1.通过new?去创建一个正则对象。 ????????第一个参数:正则表达式的主体,字符串 ????????第二个参数:修饰符?/i:忽略大小写?/g全局匹配?? ??????2.通过字面量的方式创建 ????????变量?=?/正则的主体/修饰符?; 常用方法??????test()? ? ? ? ?(常用到) ????????格式:正则对象.test(字符串) ????????作用:匹配这个字符串中是否有符合正则的内容。 ????????返回值:布尔值。匹配成功返回true,否则返回false。 ??????exec()?? ? ?(了解即可) ????????格式:正则对象.exec(字符串) ????????作用:匹配字符串中是否有符合正则的内容,将其返回。 ????????返回值:匹配成功返回一个数组,匹配失败返回null。 ? ????字符串的一些方法中也可以使用正则: ??????match() ????????格式:字符串.match(正则) ????????功能:匹配符合正则规则的字符串。 ????????返回值:匹配成功返回数组,匹配失败返回null ??????split() ????????格式:字符串.split(字符/正则) ????????功能:按照指定的规则分割字符串 ????????返回:数组,分割成功,返回分割好的数组,分割失败,返回一个只包含自身的数组。 ?????? ??????replace() ????????格式:字符串.replace(旧字符/正则,新字符)) ????????功能:按照指定的规则替换字符串 元字符? ?元字符:组成正则的基本符号,在正则中有特殊的含义。 ????[范围]? ?匹配范围内的单个字符 ????[0-9]? ?匹配0-9 ????[a-z]? ?匹配小写的26个字母 ????[A-Z]? 匹配大写的26个字母 ????[a-zA-Z]? 匹配26个字母,不论大小写。 ????[^范围]? 匹配任意一个除范围内的字符。?相当于对[范围]的取反 ????\w?匹配单个的数字,字母,下划线。基本上等价于?[a-zA-Z0-9_] ????\W?匹配单个的非字母,非数字,非下划线的字符。相当于\w的取反。?注意,取反不是对结果的取反,是对匹配内容的取反。 ????\d? 匹配单个数字?相当于[0-9] ????\D?匹配单个非数字?相当于[^0-9] ????\s? 匹配空白字符(空格,换行) ????\S?匹配非空白字符 ? ? ?.??匹配任意字符 ????$?匹配行尾?a$:字符串以a结束 ????^?匹配行首?^a:字符串以a开头 限定符? ? a*?a匹配0次或多次? ????a+?a匹配1次或多次 ????a??a匹配0次或1次 ????a{m,n}?a至少匹配m次最多匹配n次 ????a{m,}a匹配m次以上 ????a{m}a匹配m次 ???? ? ? 注意:元字符,限定符修饰的只是单个字符!?如果想要修饰一个整体,就将其使用小括号包括起来。 ???或运算符? ?? (m|n)?匹配m或者匹配n 贪婪模式??????贪婪模式:当正则去匹配内容时,会尽可能多的去匹配。?? ? ? ? 非贪婪模式:只需要在限定符后面添加一个?,就会变成非贪婪模式。 ??????+?出现1次或多次 分组? ? ?分组:添加小括号就可以实现分组 ????exec返回的是一个数组,第一个元素是整体的一个返回值,从后面的元素是按照小括号的顺序依次返回的。 断言??????1.正向先行断言 ??????2.反向先行断言 ??????3.正向后行断言 ??????4.反向后行断言 ??????先行和后行的区别:先行是在右边,后行在左边。
??????正向先行断言 ????????格式:(?=表达式)?表示所在位置右侧必须是表达式的内容,但是不会匹配表达式的内容。 ???????eg:喜欢(?=你)?只匹配喜欢两个字,但是喜欢右边必须是你,但是又不能匹配你。 ??????反向先行断言: ??????格式:(?!表达式)?表示所在位置右侧不能是表达式的内容,但是不会匹配表达式的内容。 ????????eg:喜欢(?!你)?只匹配喜欢两个字,但是喜欢右边不能是你 ?????? ??????正向后行断言 ????????格式:(?<=表达式)?表示所在位置左侧必须是表达式的内容,但是不会匹配表达式的内容。 ??????反向后行断言 ????????格式:(?<!表达式)?表示所在位置左侧不能是表达式的内容 ?????? |
|
JavaScript知识库 最新文章 |
ES6的相关知识点 |
react 函数式组件 & react其他一些总结 |
Vue基础超详细 |
前端JS也可以连点成线(Vue中运用 AntVG6) |
Vue事件处理的基本使用 |
Vue后台项目的记录 (一) |
前后端分离vue跨域,devServer配置proxy代理 |
TypeScript |
初识vuex |
vue项目安装包指令收集 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年4日历 | -2025/4/19 9:05:08- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |