• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

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

php 搞代码 4年前 (2022-01-04) 19次浏览 已收录 0个评论

上篇文章给大家介绍了《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);
?>

代码运行结果:

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

代码显示结果如下:

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

$pattern = '/love/i' ;

代码运行结果:

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

$pattern = '<em style="color:transparent">来源gao.dai.ma.com搞@代*码网</em>/lo  ve/i' ;

代码运行结果:

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

$pattern = '/lo  ve/ix' ;

代码运行结果:

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


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:在PHP中模式修正符有哪些?他们是如何使用的?(附详解)

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址