正则表达式(RegExp)及其在JS中的使用

17 篇文章 0 订阅
7 篇文章 0 订阅

常用

  1. 把你的猫放在键盘上
  2. 让它走一圈
  3. 一段完美的正则就写好了
  • 正数: /^[0-9]+(\.[0-9]+)?$/
  • 邮箱
// 较为严格
/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((.[a-zA-Z0-9_-]{2,3}){1,2})$/

// 宽松
/^.+@.+\..+$/

JS 中

String.match() 和 **RegExp.exec()**还返回两个属性, index : 匹配的第一个字符位置; input : 被检索的字符串原文

  • String.search() : 接受一个字符串或者正则,返回匹配到的 第一个 字符的位置

  • String.match() : 接受一个字符串或者正则,返回数组,或者Null

  • String.replace() : 第一个参数接受一个 字符串或正则 ,第二个接受一个字符串,返回 替换 好的字符串(将第一个参数匹配到的全部替换成第二个字符)

  • String.split() : 第一个参数接受一个 字符串或正则 ,第二个接受一个数字(限制返回的数组长度),返回 分割 好的数组

  • RegExp.test() : 接受一个字符串,返回 Boolean

  • RegExp.exec() : 接受一个字符串,返回数组,或者Null

元字符

以下符号需要匹配时用 \ 转义使用

^ $ \ . * + ? () [] {} |

常用写法

  • [A-z] : 中括号 [] 表示匹配A - z任意单个字符

  • 修饰符

    • i : 忽略大小写
    • m : 多行匹配
    • g : 全局匹配(可以匹配多次)
  • 字符匹配

    • \w : 字母数字下划线
    • . : 除了换行符外的任意字符
    • \d : 任意数字
    • \D : 任意非数字
    • \s : 任意空白字符
    • \S : 任意非空白字符
    • \n : 匹配换行符
  • 量词

    • * : 匹配 0 次或多次
    • + : 匹配 1 次或多次
    • ? : 匹配 0 次或 1 次
    • {n} : 匹配 n 次
    • {n,m} : 匹配 n-m 次
    • {n,} : 匹配 n 次或多次
  • 分组

    把括号内的项作为一个独立的单元来处理(使用*, +, ?, | , etc)

  • ^ :用于中括号 [] ,代表匹配非此字符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值