zoukankan      html  css  js  c++  java
  • 正则表达式

    正则表达式

    总的来说正则表达式就是一个表达式,它用一些有一定规则的单个字符来表示一定含义的字符串或值。例如:不是数字,用正则表达式表示为 re = [^0-9].

    【正则表达式】
    什么是正则:在常见的字符串检索或替换中,我们需要一种模式来表示检索或替换的规则。正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则的字符串。(作用:简单地说就是匹配字符)。
    ECMAScript通过RegExp类型来支持正则表达式。
    创建正则表达式语法:
    (1)var expression = /pattren/ flags;
    参数说明:pattren模式部分可以是任何简单或复杂的正则表达式(即所要匹配、描述的一系列句法的单个字符串),可以包含字符类、限定符、分组、向前查找以及反向引用。flags:表示正则表达式的标志,其值可为:g:表示全局模式(global),即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。i:表示不分大小写模式。m:表示多行模式,即在到达一行文本末尾时还会继续查找下一行是否存在与模式匹配的项。
    (2)使用RegExp构造函数
    var expression = new RegExp("pattren","flags");(参数用法同上)

    正则表达式模式中使用的所有原字符都必须转义。这些原字符包括:{ [ ( ^ $ | ) ? * + . ] }(用右斜杠“”来转义)。

    RegExp实例属性:global:g.(布尔值)
                                 ignoreCase:i.(布尔值)
                                 lastIndex:整数,表示开始搜索下一个匹配项的字符位置,从0开始算。
                                 multiline:m.
                                 source:用正则表达式的字符串表示。

    RegExp实例方法:exec()方法:可捕获组而设计的,接受一个参数:要应用模式的字符串,返回包含第一个匹配信息的数组array,其有两个属性:index:匹配项在字符串的位置,input:表示应用正则的字符串。在数组中,第一项是与整个模式匹配的字符串,其余项是于模式中的捕获组匹配的字符串。(此方法用来执行正则表达式的匹配,返回一个数组)
    test()方法: 用于测试正则表达式的匹配,返回布尔值。常用语if语句中。
    compile()方法:用于改变RegExp的检索模式,可以添加或删除第二参数(编译正则表达式)。

  • 相关阅读:
    poj 1579(动态规划初探之记忆化搜索)
    hdu 1133(卡特兰数变形)
    CodeForces 625A Guest From the Past
    CodeForces 625D Finals in arithmetic
    CDOJ 1268 Open the lightings
    HDU 4008 Parent and son
    HDU 4044 GeoDefense
    HDU 4169 UVALive 5741 Wealthy Family
    HDU 3452 Bonsai
    HDU 3586 Information Disturbing
  • 原文地址:https://www.cnblogs.com/yehui-mmd/p/5847258.html
Copyright © 2011-2022 走看看