php正则表达式实现替换的方法:首先创建一个PHP示例文件;然后定义一个字符串;最后通过正则表达式“preg_replace("/[0-9]/","",$str);”去掉字符串中所有数字即可。
本教程操作环境:Windows7系统、PHP5.6版,该方法适用于所有品牌电脑。
推荐:《PHP视频教程》
PHP正则替换preg_replace函数的使用
<?php $str="as2223adfsf0s4df0sdfsdf"; echo preg_replace("/0/","",$str);//去掉0字符,此时相当于 replace的功能, preg_replace("/0/","A",$str); 这样就是将0变成A的意思了 echo preg_replace("/[0-9]/","",$str);//去掉所有数字 echo preg_replace("/[a-z]/","",$str); //这样是去掉所有小写字母 echo preg_replace("/[A-Z]/","",$str); //这样是去掉所有大写字母 echo preg_replace("/[a-z,A-Z]/","",$str); //这样是去掉所有字母 $str="as2223adfsAAf0s4df0s中国人dD中南海DDfsdf"; echo preg_replace("/[a-z,A-Z,0-9]/","",$str); //去掉所有字母和数字 ?> 经过以上的例子,相信大家知道,[ ] 和里面的,有什么作用了。也可以看到,匹配的字符串必须加 / /(看例子的第一个参数) <?php $str="acsdcs<55555555>sc<6666>sdcd"; echo preg_replace("/<.*>/","",$str); //这个是表示去除以<开头,以>结尾的那部份,输出结果是:acsdcssdcd 注意:上面的 .* 是表示任何字符,也就是说不管<>包住的是什么都去掉其中. 表示任意字符, * 表示任意个数 现在我们来改动一下,如果不想是任何个数呢? $str="acsdcs<55555555>sc<6666>sdcd"; echo preg_replace("/<.{4}>/","",$str); //此时输出:acsdcs<55555555>scsdcd因为{4}指定了条件:<>内为4个字符的才满足条件,所以<55555555>不符合条件,没有被替换。 注意:这时我们又学到了一个知识点{数字} 表示指定前面的个数,*就表示是任意个(0--无限个) 表示重复次数的除了 *, {指定次数} 表示,还有很多表达形式: <?php $str="acsdcs<55555555>sc<6666>sd<>cd"; echo preg_replace("/<[0-9]*>/","",$str); //输出acsdcscd echo "<hr>"; echo preg_replace("/<[0-9]+>/","",$str); //输入acsdcsscsd<>cd ?> 上面的例子只要是为了 表达 * 与+的区别 ,* 表示重复0数或n 次,而+ 表示1次以上,即一例中<[0-9]+ >表示<>里面至少要有一个数字才符合条件。 相信这时大家知道,为什么上例中用* 和用+输出的结果不同了吧 再来: <?php $str="acsdcs<55555555>sc<6666>sd<>cd"; echo preg_replace("/<[0-9]?>/","",$str); //输出acsdcs<55555555>sc<6666>sdcd ?> 看[0-9]? 这里的?表示要是0次或1 次,超过1次又不符合条件了。 总结一下,上面我们学会了 * + ? 和大括号{}表示重复次数的方法。 ---------------------------------------------------------------------------------------------------- $s=preg_replace("/(.*?[月票|求|更].*?)/i","",$s); preg_match_all('/href=\"([0-9]+)\.shtm">(.+?)<\/a>/i',$s,$arr_dstorycate); print_r($arr_dstorycate); ---------------------------------------------------------------------------------------------------- preg_match_all("/<img.*?src=[\\\'| \\\"](.*?(?:[\.gif|\.jpg]))[\\\'|\\\"].*?[\/]?>/i",$content,$arr_dstorycate); print_r($arr_dstorycate);
补充:
.$pattern是数组,$replace也是数组,则中对应的 元素进行替换
php
preg_replace有五个参数,有三个是必须参数
Preg_replace(mixed $pattern, mixed $replacement, mixed $subject [,int $limit = -1 [,int $count ]]);
$pattern 可以是字符串,字符串数组,或者preg
$replace 是用于替换的字符串或字符串数组
$subject 目标字符串或者目标字符串数组
$limit 每个模式在每个$subject上最大的替换次数,默认是-1(无限次)
$count 返回在目标字符串所替换的次数
在repalce与pattern中有几点要注意的
1.$pattern是数组,$replace也是字符串,那么所有模式都使用这个字符串来匹配;
2.$pattern是数组,$replace也是数组,则中对应的 元素进行替换
3.如果数组$pattern大于$replace,则多出来的$pattern用空的字符串进行替换,
$replace少于$patterns,则匹配到的值全部用空字符串来替换
4.对于上面例子中出现的${1},${2},${3},这个叫做包含后向引用,里面的数字代表原子出现的位数,有两种写法,一种是\\n,一种是${n},推荐使用第二种写法.会把目标字符串匹配到的pattern中的原子,按照要求变化目标字符串的格式,或者匹配的原子原样输出(这里举两个例子)
把时间按照 下划线分割开来,${3}就是匹配的到$patterns中的第三个原子((\d{1,2})),${4}就是匹配的到$patterns中的第四个原子((\d{1,2}))以此类推,
例如大家熟悉的smarty模板引擎中编译后替换的方法
5.第四个参数的$limit的使用,第四个参数的意思是每个模式在每个subject上进行替换的最大次数
如果limit为n,它只用正则替换n次
6.第五个参数$count的使用,$count的意思是,subject目标字符串被替换的次数,拿第五点的例子来说
上面代码中的例子运行结果如下:
附加:
preg_replace与str_replace的关系是什么呢?
我们可以理解为str_replace是preg_repalce的一个子集.只是str_replace中的第一个参数写的是string,而preg_replace写的是一个正则表达式
以上是php如何使用正则表达式实现替换的详细内容。更多信息请关注PHP中文网其他相关文章!

本文比较了酸和基本数据库模型,详细介绍了它们的特征和适当的用例。酸优先确定数据完整性和一致性,适合财务和电子商务应用程序,而基础则侧重于可用性和

本文讨论了确保PHP文件上传的确保,以防止诸如代码注入之类的漏洞。它专注于文件类型验证,安全存储和错误处理以增强应用程序安全性。

本文讨论了在PHP中实施API速率限制的策略,包括诸如令牌桶和漏水桶等算法,以及使用Symfony/Rate-limimiter之类的库。它还涵盖监视,动态调整速率限制和手

本文讨论了使用password_hash和pyspasswify在PHP中使用密码的好处。主要论点是,这些功能通过自动盐,强大的哈希算法和SECH来增强密码保护

本文讨论了OWASP在PHP和缓解策略中的十大漏洞。关键问题包括注射,验证损坏和XSS,并提供用于监视和保护PHP应用程序的推荐工具。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器