JS正则

聊正则之前说一下了解正则的必要性吧。在做项目的时候发现需要匹配出空格也就“ & n b s p;” 一半方法不好找到 使用正则就比较好找。还有就是金钱格式化,我们可以写一个函数 用到正则时可以 replace(/ \B ( ?= ( \d { 3}) +$) I g ,’,’) 就得到想要的格式了,等等。

  1. 常用元字符
    /:一般是指一个匹配的开始
    . : 单个字符(非换行和行结束符)
    ^:匹配一行的开头
    $: 匹配一行的结尾
    \w:单词字符
    \W: 非单词字符
    \d:数字
    \D: 非数组
    \s: 空白字符
    \S:非空白字符
    \b:匹配单词边界
    \B:非单词边界
    \0: 查找NULL字符
    \n:换行字符
    \r: 回车
    还有\f、\t、\v、\xxx、\xdd、\uxxx等我感觉很不常用,想学习自行了解
    解释:1、说一下\w 和 \d 一开始我认为\w是单词 但不是,\w是数字字母(大小写)
    下划线,还有 希腊字母 俄文字母 可以理解为是我们常用的单词字符都可以。\d就是只数字0-9
    2、\b字符边界也说一下:就是单词的边界 比如‘123,’ 那么 3和‘,’中间就是单词边界
    3、‘/’和‘\’的区别 ‘/’ 匹配开头 /w 是匹配已w开头 而‘\’是转译为特殊字符 \w 就是匹配单词字符

  2. 限定符
    *:重复匹配0次或更多次既0,1,2,3…
    +:重复一次或多次
    ?:0次或1次
    {n}:n次
    {n,}:n次或更多即大于等于n
    {n,m}:n到m次 例:{2,8} 重复2-8次

  3. 特殊参数
    i:忽略大小写
    g:全局匹配
    gi:忽略大小写全局匹配

  4. 括号的含义
    ():一个大单元 (123)就是匹配出(123)这个 将123 看作一个整体
    []: 一个选择区域 [123]就是匹配1/2/3
    {}:匹配长度 如上面说的限定符 {2} {2,8}等等
    解释一下

var str1 = '124'
alert(str1.match('(123)'))
alert(str1.match('[123]'))
// null
// 1
// (123) 是一个整体 所以匹配不出来 结果为null [123] 里面的每个字符都是单独的可以匹配到
// 特殊一点
alert(str1.match('[(123)]'))
// 1
// [] 中会把特殊字符'('和')' 当成普通字符 也就是会匹配(、1、2、3、)这5个字符
  1. 其他符号
    [^abc] : 不匹配集合中的任何一个字符
    a|b: a或者b
    (?=)
    (?!)
    (?<=)
    (?<!)
    这几个一时半会不好说 大家自行百度哈
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值