请教!我想对<!--beginunit name=xxx--!>内容<!--endunit--!>进行替换。 这个可以查考已经有的模板工具中的正则表达式修改,例如phplib里面的,smarttemplate里面的,学习吗,不要太懒了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不知道你到底要怎么替换,用正则表达式,'@<!--beginunit\s+name=([A-Za-z]+)-->(.*)<!--endunit--!>@sm' 呵呵……急着要啊!不知道那是什么东西!我的意思是!<!--beginunit name=xxx--!>内容<!--endunit--!>替换以后<!--beginunit name=xxx--!>“原代码……”<!--endunit--!> 还是不太明白楼主的意思。<!--beginunit name=xxx--!>内容<!--endunit--!>替换以后<!--beginunit name=xxx--!>“原代码……”<!--endunit--!>这两个有什么不同吗?格式还是一样的。 1、不知道<!--beginunit name=xxx--!>时候出现。2、不知道怎么提取出来~!3、对不同的name,进行不同的替换 $doc =<<< TEXT<!--beginunit name=xxx--!>内容<!--endunit--!>TEXT;$name = "xxx";$t = "原代码……";$doc = preg_replace("/(<!--beginunit name=$name--!>).*(<!--endunit--!>)/sU","\\1$t\\2",$doc);注意此法不允许标记嵌套 to:唠叨老大1、我更本就不知道xxx是什么,如果知道,就好办了!2、我也不知道会出现多少次<!--beginunit name=xxx--!>内容<!--endunit--!>我本来的想法是内容写到数据库里,用的时候好调。下一次修改的时候只改<!--beginunit name=xxx--!>内容<!--endunit--!>相对应的数据库里的内容。这样可以不动用原文件,而且可以多次修改。 1、我更本就不知道xxx是什么,如果知道,就好办了!如果你不知道需要操作的对象,那我也无话可说2、我也不知道会出现多少次<!--beginunit name=xxx--!>内容<!--endunit--!>这没有关系,只要不是<!--beginunit name=xxx--!>内容<!--beginunit name=xxx--!>内容<!--endunit--!><!--endunit--!>这样嵌套就可以 to:唠叨老大我比较笨啊,我就是通篇文档找不出有几个不同的name出来!能否指教一下,怎么找?! $doc =<<< TEXT<!--beginunit name=aaa--!>内容<!--endunit--!>TEXT;$aaa = "原代码……";$doc = preg_replace("/(<!--beginunit name=(\w+)--!>).*(<!--endunit--!>)/esU","'\\1'.$\\2.'\\3'",$doc);echo $doc 用 smarty 来做,可以用里面的模版方式来解决,这个相当方便! php数据库搜索问题 怎么动态实例化类并加载方法 数组排序问题 问一个简单的正则替换问题 这样是否可以杜绝sql注入? 怎么打印半个空格? 请问linux下的php编辑工具有哪些,谢谢 怎么用php做站内搜索? 如何用php把表格内容输出到excel表中? memcache 缓存内容存储的位置 怎样对 web 页面中的图象进行保护,阻止非授权下载? 获取当前的系统时间总是小时不对
急着要啊!不知道那是什么东西!
我的意思是!
<!--beginunit name=xxx--!>
内容
<!--endunit--!>
替换以后
<!--beginunit name=xxx--!>
“原代码……”
<!--endunit--!>
<!--beginunit name=xxx--!>
内容
<!--endunit--!>
替换以后
<!--beginunit name=xxx--!>
“原代码……”
<!--endunit--!>
这两个有什么不同吗?格式还是一样的。
2、不知道怎么提取出来~!
3、对不同的name,进行不同的替换
<!--beginunit name=xxx--!>
内容
<!--endunit--!>
TEXT;$name = "xxx";
$t = "原代码……";
$doc = preg_replace("/(<!--beginunit name=$name--!>).*(<!--endunit--!>)/sU","\\1$t\\2",$doc);注意此法不允许标记嵌套
1、我更本就不知道xxx是什么,如果知道,就好办了!
2、我也不知道会出现多少次
<!--beginunit name=xxx--!>
内容
<!--endunit--!>
我本来的想法是内容写到数据库里,用的时候好调。
下一次修改的时候只改
<!--beginunit name=xxx--!>
内容
<!--endunit--!>
相对应的数据库里的内容。
这样可以不动用原文件,而且可以多次修改。
如果你不知道需要操作的对象,那我也无话可说2、我也不知道会出现多少次
<!--beginunit name=xxx--!>
内容
<!--endunit--!>
这没有关系,只要不是
<!--beginunit name=xxx--!>
内容
<!--beginunit name=xxx--!>
内容
<!--endunit--!>
<!--endunit--!>
这样嵌套就可以
我比较笨啊,我就是通篇文档找不出有几个不同的name出来!
能否指教一下,怎么找?!
<!--beginunit name=aaa--!>
内容
<!--endunit--!>
TEXT;$aaa = "原代码……";
$doc = preg_replace("/(<!--beginunit name=(\w+)--!>).*(<!--endunit--!>)/esU","'\\1'.$\\2.'\\3'",$doc);echo $doc