正则表达式
正则表达式用于定义一些字符串的规则,计算机可以根据正则表达式来检查一个字符串是否符合规则,获取符合规则的内容取出来
创建正则表达式:
-
var reg = new RegExp("正则表达式", "匹配模式")
-
第二个参数可以传匹配模式 i表示忽略大小写,g 表示全局
- var reg = new RegExp("a","i ") //检查字符串中是否含有a或A
-
-
使用字面量来创建正则表达式 var reg = /正则表达式/匹配模式
-
var reg = /a/i;
-
正则表达式规则
- | 或
- [ ] 或
- [a-z] 任意小写字母
- [A-Z]任意大写字母
- [A-z] 任意字母
- [0-9] 任意数字
<script>
// 创建正则表达式
// var reg = new RegExp("正则表达式", "匹配模式")
// 第二个参数可以传匹配模式 i表示忽略大小写,g 表示全局
//使用字面量来创建正则表达式 var reg = /正则表达式/匹配模式
//检查字符串中是否含有a或A
var reg = new RegExp("a", "i");
// var reg = /a/i;
// test()用来检查一个字符串是否符合正则表达式的规则,符合返回true,不符合返回false
console.log(reg.test("bA1f"));//false
console.log(reg.test("b1af"));//true
var str = "12s12d4as"
// split()根据小写字母分割字符串
console.log(str.split(/[a-z]/))// ["12", "12", "4", "",""]
// search()查找符合正则表达式的索引.只会返回第一个,没有则返回-1
console.log(str.search(/s1/))//2
// match()符合正则表达式的内容提取出来,默认情况下只会找到第一个,要找到多个,要设置全局
console.log(str.match(/s/g))// ["s", "s"]
//可以将字符串中指定内容替换为新的内容
// replace() 参数 : 1.被替换元素(默认只找到第一个),可以接受一个正则表达式作为参数 2.新的内容
console.log(str.replace((/s/g), "zpl"))// 12zpl12d4azpl
/*
量词: 只对它前边那个内容起作用
{n} 连续出现n次,只对它前边那个内容起作用 a{n}: n个连续a
{m,n} 连续出现m~n次
{n,} 连续出现n次以上
+ 至少一个,相当于{1}
* 0个或多个, 相当于{0}
? 0个或1个,相当于{0,1}
^ 表示开头
$ 表示结尾
. 查找单个字符,除了换行符和行结束符
检查一个字符串是否含有. /\./
检查一个字符串是否含有\ /\\/
\w 任意字母,数字,_ 相当于[A-z0-9_]
\W 除了字母,数字,_ 相当于[^A-z0-9_]
\s 空格,
\S 除了空格
\b 单词边界
\B 除了单词边界
手机号:
1. 以1开头
2. 第二位是3~9任意数字
3. 三位以后是任意数字9位
规则为: /^1[3-9][0-9]{9}$/
电子邮件:
任意字母数字下划线 .任意字母数字下划线 @任意字母 .任意字母(2-5位) .任意字母(2-5位)
/^\w{3,}(\.\w+)*@[A-z0-9]+(\.[A-z]{2,5}){1,2}$/
*/
//查找3个a
var reg2 = /a{3}/
console.log(reg2.test("12aaa2"))//true
//去除前后两端的空格
var reg3 = /^\s*|\s*$/g
var str2 = " sss "
console.log(str2)// sss
console.log(str2.replace(reg3, ""))//sss
</script>








浙公网安备 33010602011771号