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

    1、 检索关键词:

        ①检索固定关键词的位置:

            var i=str.indexOf(“关键词”,fromi);在str中查找fromi位置后,下一个关键词的下标位置;省略fromi,从0开始;

            var i=str.lastIndexOf(“关键词”,fromi);在str中查找fromi位置前,上一个关键词的下标位置;省略fromi从末尾开始;

        ②判断是否包含符合规则的关键词:

            var i=str.search(/正则表达式/);找到返回下标,未找到返回-1;

    2、正则表达式:

        最简单的正则表达式就是关键词原文;

    字符集:【字符列表】①一位字母:【A-Za-z】;②一位数字:【0-9】或者d;③一位汉字:【u4e00-u9fa5】;④除了XX:【^XX】;⑤一位数字,字母,下划线:w ó【0-9A-Za-z_】;⑥一位空字符,空格,换行,Tab:s;⑦一位任意字符:.;

    3、正则量词:

        ①{m,n}:至少m个,最多n个;②{m,}:m个以上;③{m}:必须m个;④?:0或1个;⑤*:0个或以上不限;⑥+:1个或以上不限;

    4、正则选择,分组:

        ①选择:规则1|规则2;②分组:(规则1)|(规则2);

    5、正则表达式示例:

        手机号:(+86|0086)?s*1【34578】d{9};

        密码强度:①至少包含一位大写字母:(?!【a-z0-9】+$);②至少包含一位数字:(?!【A-Za-z】+$);③6~8位字母数字组合:【0-9A-Za-z】{6,8};

    6、正则位置匹配:

        ①^:匹配字符串开头;②$:匹配字符串结尾;③:匹配单词边界;

    7、检索操作关键词:

        ①查找一个固定关键词的位置:

            var i=str.indexOf(“关键词”,fromi);

            var i=str.lastIndexOf(“关键词”,fromi);

        ②判断是否包含符合规则的关键词:

            var i=str.search(/reg/);

        ③返回所有关键词内容:

            var kwords=str.match(/reg/i);

            * i为忽略大小写;g为全部查找;

        ④替换:str=str.replace(/reg/ig,“替换值”);不直接修改,返回新字符串;

        ⑤切割:var subs=str.split(/reg/);按reg匹配切割为多个子字符串存在subs中;

        ⑥获得指定位置字符:

            str.charAt(i);óstr【i】;

            var code=str.charCodeAt(i);ó获得i位置字符的Unicode号;

            var char=String.fromCharCode(code);ó将Unicode号转为字符;

        ⑦截取子字符串:

            str.slice(starti,endi+1);

            str.substring(starti,endi+1);不支持负数参数;

            str.substr(starti,n);从starti开始截取n个字符;

  • 相关阅读:
    LOJ6274 数字
    test20200415 看门人 和 WC2010 重建计划
    TJOI2018 Party 和 HDU4352 XHXJ's LIS
    LOJ3228 Tree Depth
    AGC026D Histogram Coloring
    LOJ3277 星座 和 BZOJ2616 PERIODNI
    LOJ2331 某位歌姬的故事 和 CF1327F AND Segments
    AGC024F Simple Subsequence Problem
    LOJ3278 收获
    LOJ3282 治疗计划
  • 原文地址:https://www.cnblogs.com/Jupiter258/p/5890728.html
Copyright © 2011-2022 走看看