0

正規表現でに変更[img]src[/img]したいです。<img src="src" alt="src" >

<img src="">私の場合には変換されないが、変換されるいくつかの例を見つけまし[img][/img]た。

ありがとうございました!

4

3 に答える 3

0
$ret = preg_replace('#\[img\](.+)\[\/img\]#iUs', '<img src="$1" alt="img">', $ret);

しかし、一般的には、専用のphpBBスクリプトやphpBBクラスのようなものが必要です。PHP自体でさえBBCodeテキストプロセッサを取得しました:http ://www.php.net/manual/en/book.bbcode.php

于 2013-02-07T13:08:15.360 に答える
0

あなたはそれをテストすることができます

 $str= preg_replace('~\[img\](.*)\[\/img\]~si', '<img src="$1" alt="$1">', $str);
于 2013-02-07T13:10:48.540 に答える
0

私はこの記事があなたの問題を解決するのに役立つと信じています...

http://thesinkfiles.hubpages.com/hub/Regex-for-BBCode-in-PHP

function parseCode($txt)
{
   // these functions will clean the code first
   $ret = strip_tags($txt);

   // code replacements
   $ret = preg_replace('#\[b\](.+)\[\/b\]#iUs', '<b>$1</b>', $ret);
   $ret = preg_replace('#\[link\=(.+)\](.+)\[\/link\]#iUs', '<a href="$1">$2</a>', $ret);
   $ret = preg_replace('#\[img\](.+)\[\/img\]#iUs', '<img src="$1" alt="Image" />', $ret); 
   $ret = preg_replace('#\[quote\=(.+)\](.+)\[\/quote]#iUs', '<div class="quote">$2</div><div class="quote-by">By: $1</div>', $ret);


   // return parsed string
   return $ret;
}
于 2013-02-07T13:13:21.317 に答える