• PHP笔记 28 29 30 31


    理解正则表达式

    描述一类字符串的特征,通过这个特征与特定的配合使用,对于其他的字符串进行匹配,查找,替换,分割操作!

    了解一些基本概念:这类字符串的特征是由一个或多个
    1.普通字符(例如a到z)
    2.元字符(有特殊特殊功能的字符,比如*,+,?等),组成一个字符串!
    例如‘/a/’,a就是普通字符,/是定界符(表示正则表达式的开始或结束)

    preg_match_all

    按指定的正则表达式,在给定的字符串进行搜索,匹配到符合特征的部分取出

    
    $pattren='/test/';
    $str='abc';
    var_dump(preg_match_all($pattren,$str,$arr));
    ?>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    这里是引用我们一般习惯使用正斜线“/”作为定界的字符,当然除了字母,数字,和反斜线(相当于转译,例如 \’ ->’ )以外的字符都可以作为定界符比如:#,!,(),| 都是可以的!
    定界符放在正则表达式的起始位置,前后一致!

    在这里插入图片描述
    由图可见,没有符合此特征的!http://localhost//文件名本地开开可进行搜索,比较麻烦。自行配置更方便
    在这里插入图片描述

    
    $pattren='/test/';
    $str='testabtestctestfgrgtr';
    var_dump(preg_match_all($pattren,$str,$arr));
    var_dump($arr);
    ?>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述
    在这里插入图片描述

    preg_match

    在第一次匹配过程中将会停止搜索
    参数说明:
    第一个参数:正则表达式
    第二个参数:目标字符串
    第三个参数:放一个变量,执行完成之后,里面会有匹配到的部分以及等等一些数据
    第四个参数:可以传PREG_OFFSET_CAPTURE
    具体可见PCPE
    在这里插入图片描述

    preg_replace

    参考说明:
    第一个参数:正则表达式
    第二个参数:要替换成的字符串
    第三个参数:目标字符串
    第四个函数(可选):默认是-1,就是替换所有符合特征部分的
    第五个参数(可选):可以放一个变量在这边

    正则表达式元字符

    详情可见https://www.runoob.com/regexp/regexp-metachar.html
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    课程中的配合使用

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    对于()进行理解

     <?php
    $pattren='/t(e)s(t)\\1/';//\\1代表第一个圆括号匹配的内容'/teste/'
    $str='testet';
    var_dump(preg_match_all($pattren,$str,$arr));
    var_dump($arr);
    ?>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    模式修正符

    是正则表达式的定界符后使用的,可以调整正则表达式后的解释,扩展正则表达式在匹配,替换等操作时的某些功能,增强正则表达式的处理能力。
    在这里插入图片描述
    修正符m的使用条件:
    1.目标字符串必须含\n,在字符串中出现\n就表示新的一行开始
    2.正则表达式中必须出现^或者$
    在这里插入图片描述
    (了解一下!\r:回车符\n换行符)
    在这里插入图片描述
    针对Linux系统

  • 相关阅读:
    tesseract-ocr-w64-setup-5.3.3.20231005.exe 百度网盘下载
    5G邻近服务关键技术
    按键中断实现LED、蜂鸣器、风扇工作
    开关电源-PWM外设简介及MCC配置
    Zookeeper集群 + Kafka集群
    【数据链路层】点对点协议PPP(湖科大慕课自学笔记)
    RabbitMQ和spring boot整合及其他内容
    okr与项目管理区别?
    Oracle/PLSQL: Cos Function
    HTML做一个节日页面【六一儿童节】纯HTML代码
  • 原文地址:https://blog.csdn.net/m0_64702918/article/details/125248529