• javascript RegExp


    RegExp 对象表示正则表达式,它是对字符串执行模式匹配的强大工具

    直接量语法

    /pattern/attributes

    创建RegExp对象的语法

    new RegExp(pattern,attributes);

    参数

    pattern是一个字符串,指定了正则表达式的模式或其他正则表达式

    attributes是一个可选的字符串,包含属性"g","i","m",分别用于指定全局匹配,区分大小写的匹配和多行匹配。ECMAScript标准化之前,不支持m属性。如果pattern是正则表达式,而不是字符串,则必须省略参数。

    返回值

    一个新的RegExp对象,具有指定的模式和标志。如果参数pattern是正则表达式而不是字符串,那么RegExp()构造函数将用与指定的RegExp相同的模式和标志创建一个新的RegExp对象

    如果不用new运算符,而将RegExp()作为函数调用,那么它的行为与new运算符调用时一样,只是当pattern是正则表达式时,它只是返回pattern,而不再创建一个RegExp对象。

    抛出

    SyntaxError - 如果pattern不是合法的正则表达式,或attributes含有"g","i","m"之外的字符,抛出该异常。

    TypeError - 如果pattern是RegExp对象,但是没有省略attributes 参数,抛出该异常。

    修饰符

    i 执行对大小写不敏感的匹配

    g 执行全局匹配(查找所有匹配而非找到第一个匹配而停止)。

    m 执行多行匹配

    方括号

    方括号用于查找某个范围内的字符:

    【abc】查找方括号之间的任何字符

    【^abc】查找任何不在方括号之间的字符

    【0-9】查找任何从0至9的数字

    【a-z】查找任何从小写a到小写z的字符

    【A-Z】查找任何大写A至大写Z的字符

    【A-z】查找任何大写A至小写z的字符

    【adgk】查找给定集合内的任何字符

    【^adgk】查找给定集合外的任何字符

    (red|bule|yellow)查找任何指定的选项

    元字符

    . 查找单个字符,除了换行和行结束符

    w 查找单词字符

    W查找非单词字符

    d 查找数字

    D查找非数字字符

    s查找空白字符串

    S查找非空白字符

    匹配单词边界

    B匹配非单词边界

    查找NUL字符

    查找换行符

    f查找换页符

    查找制表符

    v查找垂直制表符

    xxx查找以八进制数xxx规定的字符

    xdd查找以十六进制数dd规定的字符

    uxxxx查找以十六进制数xxxx规定的Unicode字符

    量词

    n+匹配任何包含至少一个n的字符串

    n*匹配任何包含零个或多个n的字符串

    n?匹配包含零个或一个n的字符串

    n{X}匹配包含X个n的序列字符串

    n{X,Y}匹配包含X至Y个n的序列字符串

    n{X,}匹配包含至少X个n的序列字符串

    n$匹配任何结尾为n的字符串

    ^n匹配任何开头为n的字符串

    ?=n匹配任何其后紧接指定字符串n的字符串

    ?!n匹配任何其后没有紧接指定字符串n的字符串

    RegExp对象属性

    global RegExp对象是够具有标志g

    ignoreCase RegExp对象是否 具有标志i

    lastindex 一个整数,标识开始下一次匹配的字符位置

    multiline RegExp对象是否具有标识m

    source 正则表达式的源文本

    RegExp对象方法

    compile 编译正则表达式

    exec 检索字符串中指定的值。返回找到的值,并确定其位置

    test 检索字符串中指定的值,返回true或false

    支持正则表达式的String对象的方法

    search 检索与正则表达式匹配的值

    match 找到一个或多个正则表达式的匹配

    replace 替换与正则表达式匹配的子串

    split 把字符串分割为字符串数组

  • 相关阅读:
    Linux之wget命令
    Markdown语法
    Windows实时预览markdown
    Python基础教程,Python入门教程(非常详细)
    【转载】UNICODE与ASCII的区别
    Python之虚拟环境
    Linux文件系统管理
    Linux权限管理
    linux用户和用户组管理
    linux 软件安装
  • 原文地址:https://www.cnblogs.com/qiao20/p/7921292.html
Copyright © 2020-2023  润新知