zoukankan      html  css  js  c++  java
  • 正则

    点号,匹配任何单字符的通配符(除了换行符\n)--------"abcde"=~/abc.d/

    * 匹配之前内容零次或者多次 

    *. 通配所有的字符串,捡破烂模式

    + 通配之前内容1次以上

    ? 通配前之前内容1次或者0

    分组:


    --------------

    /i 忽略大小写

    /s 匹配任意字符

    /x 加入空白

          /-?\d+\.?\d*/  #挤在一起,看不清楚

          /   -?   \d+   \.?   \d*  /x #加入空白忽略之后,忽略空格

     -------------------------

    $& 完整展示正则式匹配的内容

    $' 匹配之后的字符串

    $` 匹配之前的字符串

    如:if ("hello there,neighbor"=~/\s(w+),/) {print "$& ;}

    输出为:

    my $na='hello there, neighbor';

    if ($na=~/\s(\w+),/)

            {

            say $';

            say $`;

            say $&;}

    输出为:

    neighbor

    hello

     there,

    匹配次数:

    my $na='aaaaaaaaaaaa, neighbor';

    if ($na=~/(a{5,10})/)  #匹配出现a 5到10次的地方,如果a出现了20次,则只有前10个会匹配,如果省去右边的值,则匹配次数没有上限;如果省去左边的值,变为匹配单独的次数(如只有左边值{5},只有前5个会匹配

            {

            print $1 ;} # 这里的$1指,第一次匹配的地方,按左括弧计算

    优先级:

             元括弧                       (.....),(?:......),(?<LABEL>.....)

             量词                             a* a+ a? a{n,m}

             锚位                             abc   a^   a$

             择一                             a|b|c

             元素                             a[abc]  \d   \1

    优先级举例:

             如:/^abc|bar$/ 匹配开头有abc的,或者匹配结尾有bar的,结尾如果有abc,不匹配

                       /^(abc|bar)$/ 匹配不管开头或者结尾有abc或者bar的,结尾有abc,也匹配

    正则匹配测试模板:

             while (<>)    { chomp;

            if (/.../)  #这里输入需要测试的正则式;

                                 {

                    say "$`<$&>$'";

                    }else{

                            say "no match";

                            }

    }


  • 相关阅读:
    web网站接入谷歌登录
    ThinkPHP网页端网站应用接入微信登录
    [卡特兰数]
    KALI LINUX 工具大全概览(长期更新中。。。)
    如何使用burp suite 来pj验证码
    windows小技巧(长期更新)
    如何关闭火绒自启动
    VMware USB Arbitration Service服务-错误3:系统找不到指定的路径
    windows下的burpsuite v2021.7 安装与配置
    拿到一台新window应该做些什么事
  • 原文地址:https://www.cnblogs.com/agostop/p/2323091.html
Copyright © 2011-2022 走看看