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

    正则表达式用于定义一些字符串的规则,
    计算机可以根据正则表达式,来检查一个字符串是否符合规则,
    或者将字符串中符合规则的内容提取出来

    创建正则表达式的对象
    语法:

    var 变量=new RegExp(“正则表达式”,“匹配模式);
    使用typeof检查正则对象,会返回object

    var reg=new RegExp("a");这个正则表达式可以来检查一个字符串中是否含有a在构造函数中可以传递一个匹配模式作为第二个参数,
    在构造函数中可以传递一个匹配模式作为第二个参数,可以是
    i忽略大小写
    g全局匹配模式


    正则表达式的方法:

    test()
    -使用这个方法可以用来检查一个字符串是否符合正则表达式的规则,如果符合则返回true,否则返回false

    使用字面量来创建正则表达式
    语法:var变量=/正则表达式/匹配模式

    使用字面量的方式创建更加简单
    使用构造函数创建更加灵活

    创建一个正则表达式,检查一个字符串中是否有a或b
    使用|表示或者的意思
    []里的内容也是或的关系
    [A-z]表示任意字母
    [0-9]表示任意数字

    split()
    -可以将一个字符串拆分为一个数组
    -方法中可以传递一个正则表达式作为参数,这样方法将会根据正则表达式去拆分字符串
    -这个方法即使不指定全局匹配,也会全都拆分

    search()
    -可以搜索字符串中是否含有指定内容
    -如果搜索到指定内容,则会返回第一次出现的索引,如果没有搜索到返回-1
    -它可以接受一个正则表达式作为参数,然后会根据正则表达式去检索字符串
    -serach()只会查找第一个,即使设置全局匹配也没用

    match()
    -可以根据正则表达式,从一个字符串中将符合条件的内容提取出来
    -默认情况下我们的match只会找到第一个符合要求的内容,
    找到以后就停止检索我们可以设置正则表达式为全局匹配模式,这样就会匹配到所有的内容
    可以为一个正则表达式设置多个匹配模式,且顺序无所谓
    match()会将匹配到的内容封装到一个数组中返回,即使只查询到一个结果

    replace()
    -可以将字符串中指定内容替换为新的内容
    -参数:
    1.被替换的内容,可以接受一个正则表达式作为参数
    2.新的内容
    -默认只会替换第一个

    量词
    -通过量词可以设置一个内容出现的次数
    -量词只对它前边的一个内容起作用
    -{n}正好出现n次
    -{m,n}出现m到n次
    -{m,}m次及以上
    +至少一个,相当于{1,}
    *0个或多个,相当于{0,}
    ?0个或1个,相当于{0,1}
    ^表示开头
    $表示结尾
    如果在正则表达式中同时使用^$则要求字符串必须完全符合正则表达式
    .表示任意字符
    在正则表达式中使用作为转义字符
    .来表示.
    注意:使用构造函数时,由于它的参数是一个字符串,而是字符串中转义字符,
    如果要使用则需要使用\来代替


    w -任意字母、数字、_,等同于[A-z0-9_]
    W -除了任意字母、数字、_以外的字符,等同于[^A-z0-9_]
    d -任意的数字,等同于[0-9]
    D -除了数字,等同于[^0-9]
    s -匹配任何空白字符,包括空格、制表符、换页符等等,等同于[ vf]
    S -匹配除了任何空白字符,包括空格、制表符、换页符等等,等同于[^ vf]
    s -匹配任何空白字符,包括空格、制表符、换页符等等
     -单词边界
    B -除了单词边界

    回车符( )、换行符( )、水平制表符( )、垂直制表符(v)、换页符(f),等价于s

  • 相关阅读:
    ES6之Promise封装ajax()
    ECMAScript 6 入门之 展开运算符(...)
    函数篇:Callback----回调函数
    Vue-cli组件中写一个节流函数
    使用vant中的地址编辑组件
    js中substr()、substring()、chatAt()的区别
    npm使用国内淘宝镜像的方法
    js数组
    ECMAScript版本
    匿名函数的调用
  • 原文地址:https://www.cnblogs.com/MDZZZ/p/12497314.html
Copyright © 2011-2022 走看看