正则的使用及replace细讲

Posted shangjun6

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了正则的使用及replace细讲相关的知识,希望对你有一定的参考价值。

  1.var reg=/./ 与 var reg=/./的区别?

    .代表任意一个字符

    .而后者代表这个字符串中得有一个.

  2.?的使用

    如果单独的一个字符后面带?

    /d?/  代表1个或0个这个字符的出现    (在捕获的阶段)

    如果是量词+后面带? 代表取消贪婪性  (在捕获的阶段)

  3.捕获 (在全局捕获中,exec()多次输出后,他的起始位置不断地向后匹配,如果匹配不到就是null)

    1.普通捕获  exec()    match()(对exec()的包装)

      普通捕获有懒惰性,给正则添加一个修饰符g可以解决;

    match()是将所有捕获的内容放在一个数组中并返回,match()就是对exec()对函数的简单封装

    2.分组捕获:

      分组捕获;还是用到了exec()和match()的方法,只不过正则的结构发生了变化,加()

      分两种情况:(全局,非全局)

      非全局:exec()和match()在非全局下分组捕获相同,分组捕获在捕获的过程中,既捕获大正则的内容,也捕获分组中的内容,并返回;

      全局:exec()和match()在非全局下分组捕获不同,exec()不变,但是match只捕获到大正则里面的内容;

    3.分组捕获的优势:

      1.可以提升优先级;

      2.可以捕获引用;

    捕获引用:  1    2转义字符;

       1代表分组1里面一模一样的内容;

       2代表分组2里面一模一样的内容;

    分组的结果存在正则RegExp的$number属性下,

    

以上是关于正则的使用及replace细讲的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript 正则表达式 string.replace( regex, "$1" );中“$1”的含义 及邮箱正则表达式

JAVA中string.replace和string.replaceAll的区别及用法

JAVA中string.replace和string.replaceAll的区别及用法

JS的正则表达式及回文

pandas使用replace函数替换dataframe中的值:replace函数使用正则表达式对dataframe中的值进行替换

正则的replace函数传参使用