正则表达式

正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符")。

正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串

var res = new RegExp(/\d/) //构造函数声明方式 

var reg = /\d/ //直接量声明

正则语法 使用test方法判断

真的总结了很久很久很久 ………………创作不易!

//正则方法
var str = "aaaaaaaa23b21321c43de4e32213F"
var s = str.search(reg)   // 使用正则查找索引
var s = str.split(reg)    //使用正则分割字符串
var s = reg.exec(str)    // 检索字符串中指定的值。返回找到的值,并确定其位置

方括号 

            var reg 
            var bool
            // [abc]    查找方括号之间的任何字符,只要包含就返回true。
            reg = /[abc]/
            bool = reg.test("a")       // true
            bool = reg.test("b")       // true
            bool = reg.test("c")       // true
            bool = reg.test("a123")    // true
            bool = reg.test("123")     // false
            
            // [^abc] 查找任何不在方括号之间的字符,只要不包含就返回true。
            reg = /[^abc]/ 
            bool = reg.test("a")        // false
            bool = reg.test("!")        // true
            bool = reg.test("!a")       // true
            // - ascii下标的范围
            // [0-9]    查找任何从 0 至 9 的数字,只要包含就返回true。
            reg = /[0-9]/
            bool = reg.test("1")          // true
            bool = reg.test("a1a")        // true
            bool = reg.test("aa")         // false
            // [^0-9]   查找任何不在从 0 至 9 的数字,只要不包含就返回true。
            reg =  /[^0-9]/
            bool = reg.test("a")          // true
            bool = reg.test("1")          // false
            bool = reg.test("a1")          // true
            // 同上
            // [a-z]    查找任何从小写 a 到小写 z 的字符
            reg =  /[a-z]/ 
            // [^a-z]   查找任何从不在小写 a 到小写 z 的字符
            reg =  /^a-z]/ 
            // [A-Z]    查找任何从大写 A 到小写 Z 的字符
            reg =  /[A-Z]/
            // [^A-Z]   查找任何从不在大写  A 到小写 Z 的字符
            // reg =  /[A-z]/
            reg =  /[A-Za-z0-9_]/   //包含数字 英文字符 加上 下划线
            // reg =  /[^A-Za-z0-9_]/

元字符 

var reg 
var bool
    // 查找单个字符,除了换行和行结束符。。
    reg = /./
    // \w   查找单词字符,包含:数字 下划线 英文大小写字母。
    reg = /\w/
    bool = reg.test("a")       // true
    bool = reg.test("_")       // true
    bool = reg.test("0")       // true
    bool = reg.test("0!")      // true
    bool = reg.test("!")       // false
    // 查找非单词字符。
    reg = /\W/
    bool = reg.test("!")       // true
    bool = reg.test("0")       // false
    bool = reg.test("0!")      // true
    // \d 判断是否是数字
    reg = /\d/
    bool = reg.test("0")       // true
    bool = reg.test("a")       // false
    bool = reg.test("a1")      // true
    // 非数字
    reg = /\D/
    bool = reg.test("0")       // false
    bool = reg.test("a1")      // true
    // 匹配空格
    reg = /ab\sc/
    bool = reg.test("abc")      // false
    bool = reg.test("ab c")     // true
    // 匹配非空格
    reg = /ab\Sc/
    bool = reg.test("ab c")     // false
    bool = reg.test("abc")      // true
    reg = /\n/
    // // \r 查找回车符
    reg = /\r/

 量词

//n+    匹配任何包含至少一个 n 的字符串。
var bool
reg = /ab+c/
bool = reg.test("abc")        // true
bool = reg.test("abbc")       // true
bool = reg.test("ac")         // false
// n*   匹配任何包含零个或多个 n 的字符串。
reg = /ab*c/
bool = reg.test("ac")         // true
bool = reg.test("abc")        // true
bool = reg.test("abbc")       // true
bool = reg.test("ab")         // false
// n?   匹配任何包含零个或一个 n 的字符串。
 reg = /ab?c/
 bool = reg.test("ac")          // true
 bool = reg.test("abc")         // true
 bool = reg.test("abbc")        // false
 // n{X}     匹配包含 X 个 n 的序列的字符串。
reg = /ab{2}c/
// n{X,Y}   匹配包含 X 至 Y 个 n 的序列的字符串。
reg = /ab{1,3}c/
// n{X,}    匹配包含至少 X 个 n 的序列的字符串。
reg = /ab{0,2}c/

分组

var bool
reg = /(a{2,}|b|c|d)/
bool = reg.test("aaa")        // true
bool = reg.test("b")          // true

修饰符 

// g 全局
 var str = "   dsf fdsndf  fdsnjlsdf sd"
 reg = /\s/g
str = str.replace(reg,"")    // dsffdsndffdsnjlsdfsd
// i 大小写
reg = /a/i
bool = reg.test("A")     // true

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值