首页 >后端开发 >PHP问题 > 正文

在PHP中模式修正符有哪些?是如何使用的?(附详解)

原创2021-06-10 11:58:150663
上篇文章给大家介绍了《PHP中什么是元字符?我们该如何使用正则表达式的元字符?(附代码)》,本文继续给大家介绍在PHP中模式修正符有哪些?他们是如何使用的?(附详解),有需要的朋友可以参考一下,希望对大家有所帮助。

模式修正符有哪些:

  • i忽略大小写

  • x忽略正则中的空白

  • s使用.元字符可以匹配到\n

  • 元字符(. )可以匹配任意一个原子,除了\n之外

  • m视为多行处理,在该模式下和$可以匹配\

  • s (大s) 加速匹配

  • U模式(必须记住)改变贪婪模式

  • 改变贪婪模式,程序默认是贪婪的,匹配最远的结束为止,我们可以在正则中使用* ?匹配任意字符的同事使用腓贪婪模式。

首先我们还是先定义$str = $_POST[]接收传过来的参数,然后,我们定义正则表达式($pattern),当我们用两个定界符定义好以后就是一个正则表达式的模式,那,此时的模式修正符应放在模式修正符的后边。然后我们把匹配的代码写上去,运行结果出现匹配成功(代码如下)

<?php
//进行匹配
$str = $_POST['str'];
$pattern = '/love/' ;
$result = preg_match($pattern , $str , $match);
echo ' 匹配结果为: '.$result;
echo '<hr/>' ;
if ( $result){ 
echo '<font color="pink" size="5 ">匹配成功</font>';
}else{
echo '<font color="red">匹配失败</font>';
}
var_dump($match);
?>

代码运行结果:

7.JPG

8.JPG

如我们把输入的字符串换为大写字母会发现结果出现匹配失败:

代码显示结果如下:

9.JPG

10.JPG

如果我们在模式修正符后面加入一个I之后,我们会发现我们运行代码的结果是匹配成功;

$pattern = '/love/i' ;

代码运行结果:

11.JPG

12.JPG

如果说我们在字符串中加入空格,我们运行结果会显示匹配出错;

$pattern = '/lo  ve/i' ;

代码运行结果:

13.JPG

如果我们在模式修正符后面在加入一个x之后,我们会发现我们运行代码的结果是匹配成功;

$pattern = '/lo  ve/ix' ;

代码运行结果:

14.JPG

如果我想匹配所有的东西,我们可以用一个元字符(.)这个圆点可以匹配到任意的内容

我们以代码为例:

$pattern = '/./ix' ;

代码运行结果:

15.JPG

16.JPG

17.JPG

18.JPG

如果我们想匹配到中文,我们可以在圆点后面加一个(+);

$pattern = '/.+/ix' ;

代码运行结果:

19.JPG

20.JPG

推荐学习:《PHP视频教程

以上就是在PHP中模式修正符有哪些?是如何使用的?(附详解)的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:模式修正符
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息

    慕斯

    认证0级讲师

    推荐视频教程
  • PHP基本语法(玉女心经版)PHP基本语法(玉女心经版)
  • 小白拯救者:  PHP7基础语法快速预览小白拯救者: PHP7基础语法快速预览
  • PHP开发基础之语法篇PHP开发基础之语法篇
  • 视频教程分类