量词
通过量词可以设置一个内容出现的次数
量词只对它前边的一个内容起作用
{n} 正好出现n次
{m,n} 出现m-n次
{m,} m次以上
//创建一个正则表达式检查一个字符串中是否含有aaa
var reg = /a{3}/;//3个连续的a
console.log(reg.test("aaaabbbc"));返回TRUE
var reg = /ab{1,3}c/; //检查b是否出现1-3次,大括号内的量词只对前一个内容起作用
console.log(reg.test("aaaabbbc"));返回TRUE
reg = /ab{3,}c/;//检查b是否出现3次以上
console.log(reg.test("aaaabbbc"));//返回TRUE
n+ 匹配任何包含至少一个 n 的字符串。相当于{1,}
n* 匹配任何包含零个或多个 n 的字符串。相当于{0,}
n? 匹配任何包含零个或一个 n 的字符串。相当于{0,1}
^ 表示开头
$ 表示结尾
reg = /^a/; //匹配开头的a
reg = /a$/; //匹配结尾的a
console.log(reg.test("abcabca"));
如果在正则表达式中同时使用^ $
则要求字符串必须完全符合正则表达式reg = /^a$/;这样就表示字符串必须是a
. 表示任意字符
在正则表达式中使用\作为转义字符
\. 来表示.
\\ 表示\
注意:使用构造函数时,由于它的参数是一个字符串,而\是字符串中转义字符,如果要使用\则需要使用\\来代替
\w 任意字母、数字、_ [A-z0-9_]
\W 除了字母、数字、_ [^A-z0-9_]
\d 任意的数字 [0-9]
\D 除了数字 [^0-9]
\s 空格
\S 除了空格
\b 单词边界
\B 除了单词边界
创建一个正则表达式检查一个字符串中是否含有单词child
reg = /\Bchild\B/;
console.log(reg.test("hello child ")); //返回false
var str = " he llo ";
//去除开头的空格
str = str.replace(/^\s*/, "");
//去除结尾的空格
str = str.replace(/\s*$/, "");
//^\s*|\s*$/g 匹配开头和结尾的空格
str = str.replace(/^\s*|\s*$/g,"");