36正则表达式

36正则表达式

一、正则表达式

是一个描述字符规则的对象,可以用来检车一个字符是否含有某个字符,将匹配的字做替换或者从某个字符串中取出某个条件的子串等。其实就是一种规则,其实把正则称作规则表达式。正确的语法基于一种古老的perl语言

前端往往有大量的表单校验工作,采用正则表达式会使得数据校验的工作量大大减轻。

二、正则的创建

正则的创建方式

- 构造函数方式
var reg1 = new RegExp("a")
var str = "abcdcba"
console.log(str.match(reg1))
//输出匹配a的字符

- 字面量方式,古老的perl语言风格
var reg2 = /a/
console.log(str2.match(reg2))
//输出匹配a的字符


正则中的修饰符,写在正则表达式后面

g表示全局匹配,查找所有
i表示忽略大小写

字符串方法

- match	获取匹配的项目	返回数组	匹配正则
- search	字符串搜索
- replace	替换

正则方法

- test	用于检测一个字符串是否匹配某个模式,返回truefalse
- exec	找到了返回数组,找不到返回null

三、正则与字符串配合

- search	字符串搜索	返回出现的位置

- match	获取匹配的项目	返回数组

- replace	替换所有匹配	返回替换后的字符串

- test	用于检测一个字符串是否匹配某个模式,返回truefalse

四、字符类

任何字符	[abc]

范围	[a-z]	[0-9]|
    
排除	[^a]	排除a

组合	[a-z0-9A-Z]

五、表达式

[abc]	查找方括号之间的任意字符

[0-9]	查找任何从09的数字

[a-z]	查找任何从小写a到小写z的字符

[A-Z]	查找任何从大写A到大写Z的字符

[A-z]	查找任何从大写A到小写z的字符

六、元字符

转义字符
\d		[0-9]		数字
\w		[a-z0-9_]	数字、字母、下划线
\s		空白字符
\b		匹配单词边界

\D		[^0-9]		非数字
\W		[^a-z0-9]	非数字、字母、下划线
\S		非空白字符

.		任意字符

七、量词

也叫限定符,可以指定正则表达式的一个给定组,必须要出现多少次才能满足匹配

通过量词可以设置一个内容出现的次数,且量词只对它前边的一个内容起作用,都是必须连续出现

{n}		匹配前一个字符正好出现n次

{n, }	匹配前一个字符出现n次以上,没有限制

{n, m}	匹配一个字符出现n到m次

*		允许的次数是0至无穷次,有没有都行
+		允许的次数是0至正无穷次,至少有一个
?		允许的次数是0至1,做多出现1次
()		一组
^		表示开始
$		结束
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值