zoukankan      html  css  js  c++  java
  • 正则表达式s空格,d数字,量词+*?测试

    之前的博文中: 有正则表达式的、i、g,本文再测试了空格数字和量词的匹配。
    这篇只测试匹配,不替换或其他处理。
    s空格:测试实际写空格也能识别,但是不利于看出空了几个空格,可以用s代表空格。
    d数字:匹配数字
    +代表至少一个:一个或多个(不能是零个)
    *代表零个或多个:一个没有,或一个或多个(有多少个都行)
    ?代表零个或一个:零个后一个,不能是多个(不能是多个)

    测试代码:

    <a href="javascript:prn_p1()">点击获取</a><br>
    <script language="javascript" type="text/javascript">   
            var LODOP; //声明为全局变量 
      function prn_p1(){
    var str1="Operation not supported on selectedprinter,selected printer,selected  printer,Selected Printer";//一个空格,无空格,两个空格,首字母大写
    //都是全局匹配
    //s代表空格
    console.log(str1.match(/selectedprinter/g));//无空格
    console.log(str1.match(/selected printer/g));//一个空格,表达式中用空格表示
    console.log(str1.match(/selectedsprinter/g));//一个空格,表达式中用s表示i
    console.log(str1.match(/selectedsprinter/ig));//一个空格,用s表示,并忽略大小写
    console.log(str1.match(/selectedssprinter/ig));//两个空格,表达式用ss两个表示
    
    //带量词,
    //+代表至少一个:一个或多个
    //*代表零个或多个:一个没有,或一个或多个
    //?代表零个或一个:零个后一个,不能是多个
    console.log("-------------后面的是带量词的:分割线------------------");
    console.log(str1.match(/selecteds+printer/ig));//至少有一个空格,忽略大小写
    console.log(str1.match(/selecteds*printer/ig));//零个或多个
    console.log(str1.match(/selecteds?printer/ig));//零个或一个
    
    //d代表数字,包裹代表单词
    console.log("-----下面的是匹配的str2里的---str:clodop,clodop4,clodop40,clodop2345,--");
    var str2="clodop,clodop4,clodop40,clodop2345,";
    console.log(str2.match(/clodop/g));//带clodop组合的
    console.log(str2.match(/clodop/g));//带clodop组合的单词包裹
    console.log(str2.match(/clodopd/g));//带clodop加一个数字的组合
    console.log(str2.match(/clodopd/g));//带clodop加一个数字的组合包裹
    console.log("------下面是带量词的额 ,分割线-------");
    console.log(str2.match(/clodopd+/g));//clodop带一个或多个数字的组合的
    console.log(str2.match(/clodopd*/g));//clodop带零个或一个或多个的
    //后面带多个数字组合也会截出一个或零个组合
    console.log(str2.match(/clodopd?/g));//clodop带零个或一个的组合
    console.log(str2.match(/clodopd?/g));//clodop带零个或一个的组合包裹
    //都是全局匹配
      };
    </script> 

    因为里面测的比较多,所以选了两个在图示中解释。
    图示:

  • 相关阅读:
    redis客户端windows版中文乱码解决方案
    nginx做负载均衡,怎么在有宕机情况出现时保证网站的响应速度
    支付宝同步和异步验签结果不一致的解决方法
    @ResponseBody中文乱码解决方案
    [javamail]AUTH LOGIN failed;Invalid username or password报错
    Could not load driverClass ${driverClassName} 的解决方案
    eclipse中,maven报错maven.multiModuleProjectDirectory system property is not set
    spring bean初始化和销毁方法
    关于静态资源是否应该放到WEB-INF目录
    使用Jedis出现Connection refused的解决方案
  • 原文地址:https://www.cnblogs.com/huaxie/p/11805046.html
Copyright © 2011-2022 走看看