<?php
echo preg_replace('/<font.*?font>/','','正则表达式:在文章中有好多<font color=red>...</font>,怎么全部去掉呢?怎么来写正则表达式?正则表达式:在文章中有好多<font color=red>...</font>,怎么全部去掉呢?怎么来写正则表达式?');?>

解决方案 »

  1.   

    要正规表达式不能简单的删除HTML符号的,如果人家的文章(比如你这篇)里就希望把HTML符号显示出来就会出现问题。
    建议用htmlspecialchars()转换
    另外,VBB代码你有必要研究一下~
      

  2.   

    <?php
    $s = "正则表达式:在文章中有好多<font color=red>...</font>,怎么全部去掉呢?怎么来写正则表达式?正则表达式:在文章中有好多<FONT color=red>...</font>,怎么全部去掉呢?怎么来写正则表达式?";//你想得到这样的效果
    echo preg_replace("/<font .*\/font>/iU","",$s);
    //正则表达式:在文章中有好多,怎么全部去掉呢?怎么来写正则表达式?正则表达式:在文章中有好多,怎么全部去掉呢?怎么来写正则表达式?
    echo "<br>";//还是这样的效果
    echo preg_replace("/<\/?font.*>/iU","",$s);
    //正则表达式:在文章中有好多...,怎么全部去掉呢?怎么来写正则表达式?正则表达式:在文章中有好多...,怎么全部去掉呢?怎么来写正则表达式??>
      

  3.   

    http://www.phpe.net/downloads/22.shtml有下载我的方法在我的机器上的效果是:正则表达式:在文章中有好多,怎么全部去掉呢?怎么来写正则表达式?正则表达式:在文章中有好多,怎么全部去掉呢?怎么来写正则表达式?
    你的机器输出结果是什么?
      

  4.   

    感谢阿卡波糖告诉我正则表达式的电子书下载地址。
    唠叨的方法起了作用,能不能麻烦唠叨略讲解一下:/<font .*\/font>/iU 是如何匹配的呢?呵呵,要求有点过分了,如果你有空,就麻烦你讲解一下吧
      

  5.   

    /<font .*\/font>/iU 

    <font .*\/font> 用于匹配font标记及其间的内容
    开关
    i 表示忽略大小写
    U 表示非贪婪匹配。正则表达式一般都是贪婪匹配的,他总是试图匹配最多的内容。
    比如:..<font ..>a</font>..<font ...>b</font>...
    贪婪匹配时将匹配 <font ..>a</font>..<font ...>b</font>
    非贪婪匹配将分别匹配<font ..>a</font> 和 <font ...>b</font>