正则表达式 基础入门

正则表达式 入门基础

字符讲解

[A-Z] 匹配所有大写字母
[a-z] 表示所有小写字母
w 匹配字母、数字、下划线
匹配一个换行符
^ 匹配输入字符串的开始位置
$ 匹配输入字符串的结尾位置
* 匹配前面的子表达式零次或多次
+ 匹配前面的子表达式一次或多次
? 匹配前面的子表达式零次或一次
{n} 匹配确定的 n 次
{n,} 至少匹配n 次
{n,m} 最少匹配 n 次且最多匹配 m 次

eg:

  1. ^ 表示开头 ([ ]里面的^表示取反)
//^LLmd 表示必须 LLmd开始
console.log(/^LLmd/.test("daLLmd"));//false
console.log(/^LLmd/.test("LLmdg"));//true
console.log(/^LLmd/.test("daLLmdg"));//false
console.log(/^LLmd/.test("LLmdLLmd"));//true
  1. $ 表示结尾
// $表示结束  必须以MMtu结束
console.log(/MMtu$/.test("daMMtu"));   //true
console.log(/MMtu$/.test("MMtug"));    //false
console.log(/MMtu$/.test("daMMtug"));  //false
console.log(/MMtu$/.test("MMtuMMtu")); //true
  1. ^...$ 表示精确匹配
// 精确匹配 必须只有MMtu这4个字母
console.log(/^MMtu$/.test("MMtu"));      //true
console.log(/^MMtu$/.test("daMMtu"));    //false
console.log(/^MMtu$/.test("MMtug"));    //false
console.log(/^MMtu$/.test("daMMtug"));  //false
console.log(/^MMtu$/.test("MMtuMMtu")); //false
  1. 验证姓名
//只能是汉字
//长度2-4位之间
//汉字范围[u4e00-u9fa5]
var nameReg = /^[u4e00-u9fa5]{2,4}$/;
console.log(nameReg.test("二二二"));
  1. 验证QQ
//只能是数字
//开头不能是0
// 长度为5-11位
var qqReg = /^[1-9]d{4,11}$/;
console.log(qqReg.test("925111111"));
console.log(qqReg.test("822618"));
  1. 验证邮箱
//前面是字母或者数字
// 必须有@
// @后面是字母或者数字
// 必须有.
//后面是字母或者数字
var emailReg = /^w+@w+(.w+)+$/;
console.log(emailReg.test("11111@qq.com"));
console.log(emailReg.test("ccc@163.com.cn"));
原文地址:https://www.cnblogs.com/skydragonli/p/14431555.html