美文网首页JavaScriptWeb前端之路让前端飞
例子详解正则表达式(三)

例子详解正则表达式(三)

作者: issac_宝华 | 来源:发表于2017-05-26 01:00 被阅读37次
image.png
前言

接着例子详解正则表达式(二)>往下讲。
1.特殊字符:x(?=y)

上面说明已经很明白,()里面就是一个控制流语句,x(?=y)相当于:if(y){ x }

var str = "issax is not issac";
var pattern = /(?:issa)(?=x)/g;
console.log(str.replace(pattern, 'a'));
// 输出ax is  not issac

上面的 pattern 中第一个()中的正则语法在 例子详解正则表达式(一) 有详细说过,它是一个“非捕获符号”,结合结果你可以猜到,它的就用将“issa”捆绑成一块,作为一个整体去匹配。
第二个()是本小节主角,按本小节的pattern解读就是:只有扫描到“issa”时,只有它后面紧接的是“x”才匹配。也是因此“issac”没有被匹配。

传送门:demo

2.特殊字符:x(?!y)

会了第1小节中的正则语法,这一小节就好明白啦,就是来个否定而已,就直接上个例子了。

var str = "issax is not issac";
var pattern = /(?:issa)(?!x)/g;
console.log(str.replace(pattern, 'a'));
// 输出

传送门:demo

3.特殊字符:x|y

这个符号的作用也是上面说的起到一个或的作用,相当于控制流中的||,类比if(x || y){ }

var str = "issaxite is issacsite";
var pattern = /x|cs/g
console.log(str.replace(pattern, "c's"));

ps: ·|·是可以多次使用的。另外,由上面的例子结果可以看出,这个符号的作用是:以多个正则表达式去匹配。

传送门:demo

4.特殊字符:{n}

n是一个正整数,正整数是1,2,3,...,n(不包括负数)
可以n指定前面的字符出现的次,还是比较简单,比较好理解的

var str = "nnnn and nnnnnn  nnnnnnn is just n";
var pattern = /n{6}/g;
console.log(str.replace(pattern, 'n'));

很简单的解读:/n{6}/g就相当于/nnnnnn/g

传送门:demo

5.特殊字符:{n, m}

这个字符和第5小节中的字符的功能用点类似,但是本节的字符的作用不是指定某字符或单位字串出现的次数,而是指定某字符或某单位字串出现次数的范围,例如/n{2,3}/g,即是匹配nn或nnn但是不匹配n或nnn...n

var str = "n nn nnn nnnn nnnnn nnnnnn nnnnnnn"; // 分别是1,2,3,4,5,6,7个n
var pattern = /n{2,3}/g
console.log(str.replace(pattern, "N"));

n的出现次数在范围内还好理解,但是超出了又怎么对待的?估计会有这个疑问,例子的输出结果好像已经解答了这个问题。

  • 各位观众老爷,今天就到这里,且听下回分解。
    ps: 网络不好,demo是回公司再补了

相关文章

  • 例子详解正则表达式(二)

    前言 接着例子详解正则表达式(一)往下讲。 1.特殊字符:. (小数点) |字符|匹配规则||:--:|--||....

  • 例子详解正则表达式(三)

    前言 接着例子详解正则表达式(二)>往下讲。1.特殊字符:x(?=y) 上面说明已经很明白,()里面就是一个控制流...

  • Python3.x 正则表达式部分特殊符号及用法(详解)

    Python正则表达式部分符号详解

  • Java中的正则表达式详解

    正则表达式是对字符串操作的一种模式 一、正则表达式详解 java中正则表达式详解??帖子的目录:1.简介-介绍正则...

  • 例子详解正则表达式(一)

    对js有一定的了解的coder,应该听过或看过这么一点小知识:可以用js原生的函数解决问题,尽量不要用正则表达式,...

  • 三剑客基础详解

    三剑客基础详解 [TOC] 三剑客之grep详解 通配符与正则表达式这两口子可以说贯穿三剑客始终,甚至时贯穿lin...

  • 正则表达式

    在线正则表达式测试工具 深入理解正则表达式 详解正则表达式匹配方法 match() {}[]\d\w

  • 正则匹配

    Java正则表达式特殊字符及其处理以及正则表达式详解 打造原生的图文混排控件

  • argmax()函数详解

    argmax()函数详解 例子1: 例子2: [[ 0, 1, 2, 3],[ 4, 5, 6, 7]...

  • 正则表达式的语法分类

    转载自正则表达式30分钟入门教程 入门 学习正则表达式的最好方法是从例子开始,理解例子之后再自己对例子进行修改,实...

网友评论

    本文标题:例子详解正则表达式(三)

    本文链接:https://www.haomeiwen.com/subject/wgjxtxtx.html