zoukankan      html  css  js  c++  java
  • 关于正则匹配语法的小小总结

    常见比赛正则匹配出现在PHP和Python语句中

    正则表达式:

    用来匹配字符串的表达式

    单字符匹配

    d:匹配一个数字
    w:匹配一个字母或数字
    s:匹配一个空格或空白符 .:匹配任意字符
    0d:匹配0加上一个数字,可以匹配07,但不匹配0A 0w:07和0A都能匹配

    多字符匹配

    *:表示任意个字符(>=0+:表示至少1个字符
    ?:表示0或1个字符
    {n}:表示n个字符
    {n,m}:表示n到m个字符

    举例

    d{3}:匹配3个数字
    w{3,5}:匹配3到5个数字或字符

    范围匹配

    [0-9\_]:匹配一个数字或者下划线(转义)
    [0-9a-zA-Z]:匹配一个数字或者大小写字母
    [a-zA-Z][0-9]{0.3}:匹配大小写字母开头,加上后面最多3个数字的字符
    ^d:匹配数字开头字符
    d$:匹配以数字结束字符

    PHP的preg_match

    在preg_match中竖线等于逻辑或,/是正则perl风格的写法,置于头尾

    举例

    if(preg_match('/s+/',$GET["name"]))
        {
            die("ERROR");
        }

    用于匹配至少一个空格和空白字符

    if(!(preg_match('/^d{1,3}.d{1,3}.d{1,3}.d{1,3}$/',GET['ip'])))
        {
            echo('false');
        }

    用于匹配以数字开头,以数字结尾,至少4位,最多12位的ip地址

    [Sign]做不出ctf题的时候很痛苦,你只能眼睁睁看着其他人领先你
  • 相关阅读:
    Java反射----------------判断对象是否为空
    docker安装MongoDB创建用户,并用工具Robo连接简单CRUD
    Ubuntu 配置ip地址
    java时间的处理
    oracle my2_ep解密
    oracle 查询前7天的数据
    多表修改和多表删除
    迭代器遍历Map、List、Set
    冒泡排序
    Java有那两类异常?
  • 原文地址:https://www.cnblogs.com/echoDetected/p/13040205.html
Copyright © 2011-2022 走看看