本帖最后由 mumubangditu 于 2011-08-24 07:53:02 编辑

解决方案 »

  1.   

    $str = "[links url='http://www.google.com.hk' title='Google' image='']google[/links]|[links url='http://hk.yahoo.com' title='yahoo' image='']yahoo[/links]";
    $txt = preg_replace("#\[links(.*)\](.*)\[/links\]#isU","$2",$str);
    print($txt); //google|yahoo$image = "aaa[link_images]1.jpg[/link_images]bbb";
    $txt = preg_replace("#.*\[link_images\](.*)\[/link_images\].*?#isU","$1",$image);
    print($txt); //1.jpg
      

  2.   

    去翻手册的BBCODE
    看看手册里的例子<?php
    $arrayBBCode=array(
        ''=>         array('type'=>BBCODE_TYPE_ROOT,  'childs'=>'!i'),
        'i'=>        array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<i>',
                        'close_tag'=>'</i>', 'childs'=>'b'),
        'url'=>      array('type'=>BBCODE_TYPE_OPTARG,
                        'open_tag'=>'<a href="{PARAM}">', 'close_tag'=>'</a>',
                        'default_arg'=>'{CONTENT}',
                        'childs'=>'b,i'),
        'img'=>      array('type'=>BBCODE_TYPE_NOARG,
                        'open_tag'=>'<img src="', 'close_tag'=>'" />',
                        'childs'=>''),
        'b'=>        array('type'=>BBCODE_TYPE_NOARG, 'open_tag'=>'<b>',
                        'close_tag'=>'</b>'),
    );
    $text=<<<EOF
    Bold Text
    Italic Text
    http://www.php.net/
    Content Text
    EOF;
    $BBHandler=bbcode_create($arrayBBCode);
    echo bbcode_parse($BBHandler,$text);
    ?>