js 正则表达式

1.通过new关键字来声明一个正则对象

第一个参数:正则的主体, 字符串

第二个参数 :修饰符  字符串

i 不区分大小写

g 全局匹配

m 换行匹配

2.通过字面量来赋值

var str = /主体/修饰符;

方法

test:

格式:正则对象.test("字符串")

返回值:布尔值

功能:校验字符串是否复合规则

exec:

格式:正则对象.exec("字符串")

功能:在匹配字符串,如果匹配成功,则返回的是一个数组,数组中存放的是第一个符合条件的内容

如果匹配不成功,则返回是null

如果有全局修饰符g,则exec第二次捕获会从第一次捕获的位置开始向后去查找。

直到找不到了,返回null

再次捕获时,则从头开始。

字符串的函数:

1.match()

格式:字符串.match(正则)

功能:在字符串中匹配符合规则的内容

返回值:数组,匹配成功的内容

匹配没有成功,返回null

2.replace()

格式:字符串.replace(oldStr/正则,newStr);

功能:将新的字符替换掉旧的字符

3.split()

格式:字符串.split("分割字符"/正则)

功能:用分隔符将字符串进行分割

返回值:分割后的字符串组成的数组

4.search()

功能:找到符合条件的第一个字符的位置(下标)

格式:字符串.search(字符串/正则)

返回值:找到则返回下标

未找到则返回-1

元字符:

组成正则的基础符号,具有特殊的含义。

.  匹配单个的任意字符

[范围] 匹配单个范围内的字符

[0-9] 匹配一个数字 范围为 0-9

[0-9a-zA-Z_]

[^范围] 匹配任意一个除了范围内的字符

[^0-9] 匹配任意一个非数字的字符  = [0-9]取反

\w 匹配单个的字母,数字和下划线  = [0-9a-zA-Z_]

\W 匹配单个非字母数字下划线

\d 匹配单个数字 = [0-9]

\D 匹配单个非数字 [^0-9]

空白字符

\s 匹配一个任意的空白字符  空格 /n /t

\S 匹配一个任意的非空白字符

锚字符

^ 行首匹配 必须以它后面字符开头

$ 行尾匹配  必须以它后面字符结尾

限定元字符 (x:表示任意的单个字符)

格式:

x? 匹配0个或者1个x

x  匹配至少一个x字符

x* 匹配任意一个x字符

x{m,n} 匹配至少m个字符,最多n个 包含n

x{m} 匹配m个字符

x{m,} 匹配m个--多个

() 小括号括起来的字符串会被当成一个字符去处理

I  类似或

修饰符:

i 不区分大小写

g 全文检索

m 换行匹配

在字符串中,如果换行,重新计算行首

补充:

trim() 去除字符串首尾的空格,返回值:去除后的字符串,不会对原有的字符串造成影响

来源:https://www.icode9.com/content-4-829401.html

(0)

相关推荐

  • JS正则表达式完整版

    转自:https://blog.csdn.net/h610443955/article/details/81079439 目录 引言 第一章 正则表达式字符匹配攻略 1 两种模糊匹配 2. 字符组 3 ...

  • 正则表达式 – 语法 | 菜鸟教程

    正则表达式 - 语法 正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串.将匹配的子串替换或者从某个串中取出符合某个条件 ...

  • 正则表达式 – 教程 | 菜鸟教程

    正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符"). 正则表达式使用单个字符串来描述.匹配一 ...

  • 50道正则表达式笔试题参考答案(第11-20题)

    各位客官姥爷好,欢迎回来.我们在上节给出了前10道正则表达式练习题目和参考答案,相信各位姥爷都有对照着练习.在本节清风将给出第11-20题的参考答案. PS:在各位客官姥爷跟着清风一起完成本系列的练习 ...

  • 50道正则表达式笔试题参考答案(第21-30题)

    各位客官姥爷好,欢迎回来.我们在上节给出了第11-20道正则表达式题目和参考答案,本节将继续正则表达式系列题目,请看下方第21-30题的参考答案. PS:在各位客官姥爷跟着清风一起完成本系列的练习后, ...

  • Auto.js Pro最新版加密解密分析 | Auto.js更新至3.0.0版本 更强大了

    最近Auto.js Pro更新了一个版本,重新上线dex加密,且增加一种新的加密方式:Snapshot加密,具体的更新日志如下: Pro 8.7.6 ☆☆ 推荐:加密增强 ☆☆ 新增 加密方式--离线 ...

  • 快上车!使用 Node.js 搭建一个 API 网关

    编程微刊 1周前 以下文章来源于程序员成长指北 ,作者koala 程序员成长指北专注 Node.js 技术栈分享,从 前端 到 Node.js 再到 后端数据库,祝您成为优秀的高级 Node.js 全 ...

  • 浅谈JS运算符&&和|| 及其优先级

    今天看了一段YUI compressor压缩的js代码: userNum && (ind += index,ind >= userNum && (ind -= u ...

  • 50道正则表达式笔试题参考答案(第1-10题)

    各位客官姥爷好,欢迎回来.我们上节留下的50道正则表达式笔试练习题,有不少客官姥爷在后台回复他自己的答案.[嘿嘿,相信肯定也有偷懒没做的(收藏夹里吃灰).没关系,清风在这里陪您一起做] 一次性做50道 ...