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

      今天需要学习的是js中的正则表达式,RegExp类型。

      以本人现在的理解,正则表达式可以用与字符的匹配。

      在JS中,我们创建一个正则的常用方式如下:

    let expression = / pattern / flags;

      其中的pattern部分是正则表达式的部分, flag就是标志位的部分。

    标志位

      标志位支持下列的三个标志:

    • g: 表示全局模式,即模式将被用于所以字符串,而非在发现第一个匹配项时立即停止.
    • i: 表示不区分大小写模式,即在确定匹配项时忽略模式与字符串的大小写。
    • m: 表示多行模式,即在到达一行文本末尾是还会继续查找下一行中是否是否存在与模式匹配的项。

      总之,一个正则表达式就是一个模式与上述三个标志的组合体,不同的组合产生不同的结果。

    几个例子

    // 匹配字符串中所有“at”的实例
    let pattern1 = /at/g;
    
    // 匹配第一个"bat" 或”cat“, 不区分大小写
    let pattern2 = /[bc]at/i;
    
    // 匹配所有以”at“结尾的3个字符的组合,不区分大小写。
    let pattern3 = /.at/gi;

    元字符

      所有的元字符(想要使用)都必须转义,正则表达式中的元字符包括( [ { ^ $ | ) ?  *  +  . ] }

     // 匹配第一个”bat“或”cat“, 不区分大小写
    let pattern1 = /[bc]at/i;
    
    // 匹配第一个"[ba]ct"不区分大小写
    let pattern2 = /[ba]at/i; 
    
    // 匹配所有以"at"结尾的3个字符的组合, 不区分大小写
    let pattern3 = /.at/gi;

    使用RegExp函数创建

    let pattern = new RegExp('[ba]ct', 'i')
  • 相关阅读:
    ShopEx customSchema 定制能够依据客户的需求对站点进行对应功能的加入改动或者删除
    Android 屏幕旋转 处理 AsyncTask 和 ProgressDialog 的最佳方案
    NYOJ 46 最少乘法次数
    彻底理解position与anchorPoint
    链路层
    留不住的2015
    javascript笔记
    <html>
    高性能站点建设指南-前端性能优化(一)
    监听器设计模式
  • 原文地址:https://www.cnblogs.com/swearBM/p/12528064.html
Copyright © 2011-2022 走看看