量词
- 通过量词可以设置一个内容出现的次数
var reg = /a{3}/ - {n} 正好出现n次
//通过量词可以设置一个内容出现的次数
//{n} 正好出现n次
var reg = /a{3}/;
console.log(reg.test(“aaabc”));
- 量词只对它前边的内容起作用,要想整体起作用,必须加上括号
//创建一个正则表达式检查一个字符串中是否含有ababab
var reg = /(ab){3}/;
console.log(reg.test(“ababab”));
- {m,n}出现m到n次
- {m,}出现m次以上
-
+ 至少一次,相当于{1,}
-
* 0个或多个,相当于{0,}
- ?0个或一个,相当于{0,1}
- ^ 表示开头
var reg = /^a/ 表示字符串以a开头 - $ 表示结尾
var reg = /^a/ 表示字符串以a结尾
//检查一个字符串是否以a开头
var reg = /^a/;
console.log(reg.test(“abcd”));
//检查一个字符串是否以a结尾
var reg = /a$/;
console.log(reg.test(“bcfdsa”)); //true
- 如果在正则表达式中同时使用^$则要求字符串必须完全符合正则表达式
- var reg = /^a|a$/ 表示以a开头或以a结尾
//检查一个字符串只有a
var reg =/^a$/;
console.log(reg.test(“a”));
-
. 表示任意字符
-
在正则表达式中使用\来表示转义字符
-
\. 表示.
-
\\ 表示\
-
注意: 使用构造函数时,由于它的参数是字符串,而\是字符串的转义字符,如果要使用\则必须使用\ \来代替
-
\w 任意字母、数字、_ [A-z0-9_]
-
\W 除了字母、数字、_ [^A-z0-9_]
-
\d 任意的数字 [0-9]
-
\D 除了数字 [^0-9]
-
\s 空格
-
\S 除了空格
-
\b 单词边界,用来检查一个字符串是否含有某个单词
-
\B 除了单词边界
//创建一个正则表达式检查一个字符串中是否含有单词child
var reg = /\bchild\b/
console.log(reg.test(“hello child ren”)
//检查一个字符串中是否含有.
var reg = /\./;
console.log(reg.test(“abc.bcd”)); //true
//注意: 使用构造函数时,由于它的参数是字符串,而\是字符串的转义字符,如果要使用\则必须使用\\来代替
var reg = new RegExp("\.");
console.log(reg.test(“abc.cvd”));
console.log(reg);
创建一个正则表达式检查手机号是否合法
/*
*手机号的规则
*13507890123
* 1. 以1开头
* 2. 第二位3-9的任意数字
* 3. 第三位以后任意数字9个
*
*
* ^1 [3-9] [0-9]{9}$
*
*
*
*/
var phoneStr = prompt(“请输入手机号”);
var phoneReg = /^1[3-9][0-9]{9}$/
var bool = phoneReg.test(phoneStr);
if(bool == true){
alert(“输入正确”);
}else{
alert(“输入有误,请重新输入”);
}
去除字符串前后的空格
//去除字符串中前后的空格
//去除空格就是用 “” 来代替空格
// /^\s*|\s*$/g 匹配开头和结尾的空格
var str = " hello “;
str = str.replace(/^\s*|\s*$/g,”")
console.log(str);