js 正则

牧云@^-^@ 提交于 2019-11-28 04:05:54

正则

1.概念:封装了一些字符串进行模式匹配的规则
创建方法
var reg=/\d/gi;
var reg=new RegExp("d","gi")

#字符串支持正则表达式的方法有四个
1.str.split(reg) 把字符串切分为数组
2.str.search(reg) 查找字符串中符合正则的字符 返回值为找到的第一个符合条件的索引值
3.str.match(reg) 匹配正则条件的值返回值为数组
4.str.replace(reg,"*") 把符合正则条件的所有值都替换为*

#正则方法
1.stg.test(str) 返回值是true flase
验证字符串中有没有符合正则表达式的部分

2.exec 既可以查所有字符,又能找到相应字符

var arr=reg.exec(str)

#备选字符集 [012346789]

注意[]里面不管有多少个字符只能选择一个
编码是连续的字符可以[0-9][a-z][A-Z]
[^0-9]中括号里的^代表除了那些字符

var reg=/红|黑/g;
var reg=/[红黑]/g;

预定义字符串
\d [0-9] 纯数字
\w [A-Z a-z] 单词字符
\s 空白字符
\D [^0-9] 除了数字
\W [^A-Z a-z] 除了单词字符
\S 除了空白字符
\. 就是一个.
\? 可有可无

# 固定数量的量词
var reg=/\d{6}/ 必须6位数字
var reg=/\d{6,8}/ 6-8为数字
var reg=/\d{6,}/ 大于6位数字

#不固定数量的量词

? {0,1} 有或者没有 都可以
* {0,} 有没有都行,有几个都行 0个到多个
+ {1,} 一个或者多个

#开头^ 和结尾$
开头^ 和 [^\d]
var reg = /^1\d{5}$/
例如 var str = "12344555;
if(str.match(reg)){
console.log("ok")
}else{
console.log("no")
}

//no
//转义字符
正则表达式中所有特殊含义的字符,?+*.\
/\*\?\+\\\//

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!