正则

正则表达式 Regular Expression

用于字符串匹配 (4个支持正则的字符串方法 search match返回数组 split replace )

正则对象声明

// 1.正则对象声明
var reg = new RegExp("a", "i")

// 2.
var reg = /reg/i
g全局搜索
i忽略大小写

正则对象方法

// 判断是否匹配 返回bool
reg.test(str)

// 获取匹配的结果  返回正则执行对象数组 没有返回null
reg.exec(str)

正则表达式的使用

// []符合其中的元素 带^$只匹配其中1个元素 没带^$匹配其中的元素
var reg = /[abc]/ 
var s1 = a
var s2 = b
var s3 = ab  // true 没带^$匹配其中的元素
// ^开头 $结尾
var reg = /^[abc]$/ 
var s3 = ab  // false 带^$只匹配其中1个元素

// {2}匹配2个 {3,6}匹配3-6个 {2,}2个或2个以上
var reg = /[abc]{3, 6}/  //
var str = "aaa"  // true

// ()分组

// 字母的表现 ASCII码进行排序
var reg = /^[A-z]$/  // 匹配大写字母和小写字母 和 对应的字符
var reg = /^[A-Za-z]$/  // 匹配大写字母和小写字母

// 数字的表现 
var reg = /^[0-9]$/  // 匹配0-9的数字
var reg = /^\d$/  // \d匹配数字
var reg = /^\D$/  // \D匹配不是数字的内容

// 空白字符
var reg = /^\s$/  // \s 表示空格回车制表符
var reg = /^\S$/  // \S 表示非空白字符

// 所有字符和数字
var reg = /^.$/  // . 表示所有字符和数字 [.]会直接解析为.号
var reg = /^\w$/ //  \w 表示所有数字 字母 下划线 
var reg = /^\W/  // \W 表示不是数字 字母 下划线

// 修饰符
? 0个-1个  {0, 1}
* 0个-多个 {0,}
+ 1个-多个 {1, }

// 转义字符 \
\? \* \+ \. \( \/ \[ \{ \^ \$

中文匹配的正则

[\u4e00-\u9fa5]

捕获性分组 非捕获性分组?:

var reg = /(\d+)(?:a-z)/
var str = "123abc"
非捕获性分组reg.exec(str)  // 不会获取到(a-z) 
posted @ 2022-06-11 08:58  捧鱼咽  阅读(11)  评论(0)    收藏  举报