跳转到主内容
新派编程网 - 新潮编程理念,全新技术课堂!

求正则匹配第一行指定字符串

只删除第一行以#p#结束的字符串$body="我们来自五湖四海 我们爱我们的家乡#p#四川好啊,湖南好啊,广东好啊,重庆好啊#e#p#四川好啊,湖南好啊,广东好啊,重庆好啊"$body=preg_replace('/........./is', '',$body,1);

输出:

四川好啊,湖南好啊,广东好啊,重庆好啊四川好啊,湖南好啊,广东好啊,重庆好啊回复讨论(解决方案)$body=preg_replace('/.+?#p#/is', '',$body,1);那为什么 #e#p# 也被删除了?

preg_replace('/(.*)#p#(\r\n)+/i', '',$body);楼主我和2楼有同样疑问你说只删除第一行字符串那为什么你在输出的时候那个#e#p#字符没有了。这串字符(#e#p#)要还是不要啊?

有可能2楼明白我的用意,我先测试分析下,嘿嘿测试了下,u010036886更接近我的用意,但还有些不完善,也是因为我表达不够清晰,我再把需求重述一遍。兄弟再看看。

php

//2、中间的分页标记“#p#千万不要随大流#e#”

//说明:#e#是标题,#p#是分页,当然删除也包括#e#和#p#字符了。

?>preg_replace('/(.*)#p#(\r\n)+/i', '',$body);应该是nowphp更接近用意

相关文章