zoukankan      html  css  js  c++  java
  • JavaScript 正则表达式(RegExp)

    正则表达式(regular expression)是一个描述字符模式的对象,JavaScript使用 RegExp类来表示正则表达式

    可以使用 RegExp()构造函数来创建对象:
    var a=newRegExp('s$')
    但是通常直接量语法来创建 RegExp对象:
    var a=/s$/     //两个斜杠包裹

    正则的三种模式:

    g 默认情况下,第一次匹配成功后,正则对象就停止向下匹配了。g修饰符表示全局匹配(global),加上它以后,正则对象将匹配全部符合条件的结果,主要用于搜索和替换。

    i 默认情况下,正则对象区分字母的大小写,加上i修饰符以后表示忽略大小写(ignorecase)。

    m 有时,字符串的头部或尾部可能会有换行符。默认情况下,正则对象会将换行符算入字符串的开头或结尾。m修饰符表示多行模式(multiline),加上它以后,正则对象会忽略字符串头部或尾部的换行符,即^和$会忽略换行符

    属性

    描述

    ignoreCase

    返回一个布尔值 表示是否设置了i修饰符,该属性只读。

    global:

    返回一个布尔值 表示是否设置了g修饰符,该属性只读。

    multiline

    返回一个布尔值 表示是否设置了m修饰符,该属性只读。

    source

    返回正则表达式的字符串形式(不包括反斜杠),该属性只读。

    lastIndex

    返回下一次开始搜索的位置。该属性可读写,但是只在设置了g修饰符时有意义。

     如下:

    test()
    test() 方法检索字符串中的指定值。返回值是 true 或 false。
    语法:Objectname.test(str)


    exec()
    exec() 方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。
    语法:Objectname.exec(str)


    compile()
    compile() 方法用于改变 RegExp。
    compile() 既可以改变检索模式,也可以添加或删除第二个参数。
    语法:Objectname.compile(str)5

    正则和字符串函数的协同使用


    match();
    match其实和exec挺像的,返回值很类似

    区别:match如果需要匹配的正则表达式使用了g模式, 则会一次性把所有的匹配结果都放在数组里
    而exec()则不会, exec会依照g模式, 把lastIndex往后推至下一次匹配开始的下标;

    search();
    能匹配到就返回第一次匹配到的下标;无匹配值返回-1

    直接量字符、字符类
    在正则表达式中许多标点符号都具有特殊含义它们是:

    ^ $ . * + ? = ! : |  / ( ) [ ] { }        这些自己百度 也没啥...

    多百度!多看多学!多用就差不多了...

    本文来自博客园,作者:咸瑜,转载请注明原文链接:https://www.cnblogs.com/bi-hu/p/14723065.html

  • 相关阅读:
    群发邮件2
    谈谈C#中的三个关键词new , virtual , override
    一个简单的jQuery插件ajaxfileupload实现ajax上传文件例子
    网站静态化结构
    第四十七章 天神的邀请
    asp.net 异步群发邮件时遭遇到的问题 ddddddddd
    第四十章 远方的消息
    商用群发p2p网络
    第四十八章 三大客卿
    第四十五章 你没让我失望
  • 原文地址:https://www.cnblogs.com/bi-hu/p/14723065.html
Copyright © 2011-2022 走看看