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

    正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。

    搜索模式可用于文本搜索和文本替换。

    语法

    /正则表达式主体/修饰符(可选)

    其中修饰符是可选的。

    //实例:
    var patt = /runoob/i

     /*

     实例解析:

     /runoob/i  是一个正则表达式。

     runoob  是一个正则表达式主体 (用于检索)。

     i  是一个修饰符 (搜索不区分大小写)。

     */

    在 JavaScript 中,正则表达式通常用于两个字符串方法 : search() 和 replace()。

    search() 方法 用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串,并返回子串的起始位置。

    replace() 方法 用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。

    search() 方法使用正则表达式

    //实例
    //使用正则表达式搜索 "Runoob" 字符串,且不区分大小写:
    
    var str = "Visit Runoob!"; 
    var n = str.search(/Runoob/i);

    search() 方法使用字符串

    search 方法可使用字符串作为参数。字符串参数会转换为正则表达式:

    //实例
    //检索字符串中 "Runoob" 的子串:
    
    var str = "Visit Runoob!"; 
    var n = str.search("Runoob");

    replace() 方法使用正则表达式

    //实例
    //使用正则表达式且不区分大小写将字符串中的 Microsoft 替换为 Runoob :
    
    var str = document.getElementById("demo").innerHTML; 
    var txt = str.replace(/microsoft/i,"Runoob");

    replace() 方法使用字符串

    //replace() 方法将接收字符串作为参数:
    
    var str = document.getElementById("demo").innerHTML; 
    var txt = str.replace("Microsoft","Runoob");

    正则表达式修饰符

    //修饰符 可以在全局搜索中不区分大小写:

    修饰符 描述 i 执行对大小写不敏感的匹配。 g 执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。 m 执行多行匹配。
    //方括号用于查找某个范围内的字符:
    
    表达式                        描述
    [abc]                 查找方括号之间的任何字符。
    [0-9]                查找任何从 0 至 9 的数字。
    (x|y)                 查找任何以 | 分隔的选项。
    //元字符是拥有特殊含义的字符:
    
    元字符              描述
    d               查找数字。
    s              查找空白字符。
                  匹配单词边界。
    uxxxx    查找以十六进制数 xxxx 规定的 Unicode 字符。
    //量词:
    
    量词            描述
    n+        匹配任何包含至少一个 n 的字符串。
    n*        匹配任何包含零个或多个 n 的字符串。
    n?        匹配任何包含零个或一个 n 的字符串。

    使用 RegExp 对象

    在 JavaScript 中,RegExp 对象是一个预定义了属性和方法的正则表达式对象。

    使用 test()

    test() 方法是一个正则表达式方法。

    test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。

    以下实例用于搜索字符串中的字符 "e":

    //实例
    var patt = /e/;
    patt.test("The best things in life are free!");
    
    //字符串中含有 "e",所以该实例输出为:true

    使用 exec()

    exec() 方法是一个正则表达式方法。

    exec() 方法用于检索字符串中的正则表达式的匹配。

    该函数返回一个数组,其中存放匹配的结果。如果未找到匹配,则返回值为 null。

    以下实例用于搜索字符串中的字母 "e":

    //Example 1:
    /e/.exec("The best things in life are free!");
    
    //字符串中含有 "e",所以该实例输出为:e
  • 相关阅读:
    css3 transition和animation的区别与联系
    存成时间格式 strftime
    将不标准的时间。提取出来, 变成标准时间。
    将不标准的时间, 提取出来, 变成标准时间。
    当程序到这个时间点的时候,就可以执行。
    psycopg2 存储数据库使用
    json转csv
    把数据成从数据库读出来, 进过修改在放到数据库里面去
    百度地图爬取数据
    VMware Workstation 和win 贡献粘铁板
  • 原文地址:https://www.cnblogs.com/windyrainy/p/10711294.html
Copyright © 2011-2022 走看看