0

PHPを使用して、どのように変換できますか?

[QUOTE=Username;1234]This is the text being quoted[/QUOTE]

の中へ:

<div class="quote"><a href="./linktopost?id=1234>Posted by: Username</a><p>This is the text being quoted.</p></div>

Username1234 id、およびこれは引用されているテキストであるテキストがマップされている場所に注意してください。

str_replace私は、次のインスタンスを置き換えるだけで、最初と最後を行う方法を知っています。

[QUOTE= >>> <div class="quote">< href="./linktopost.php?id=

[/QUOTE] >>> </p><div>

しかし、ユーザー名投稿ID、引用されているテキストを抽出して、それらをすべて結び付ける方法がわかりません。

それが役に立ったら、上記のことから、ユーザー名は区切り文字[QUOTE=との間;で抽出でき、投稿IDはとの間で抽出でき、テキストはとの間で抽出できますが;、それらを抽出する方法がわかりません。]][/QUOTE]

また、引用符の中に引用符がある場合はどうなりますか?このソリューションは、これらの場合にも機能するはずです。

何か案は?

4

1 に答える 1

2

これは役立つかもしれません;)

$str = "[QUOTE=Username;1234]This is the text being quoted[/QUOTE]";

if(preg_match('/\[QUOTE=([^;]+);([0-9]+)\]([^\[]+)\[\/QUOTE\]/i', $str, $matches)){
    echo "<br>USERNAME : ".$matches[1];
    echo "<br>POST ID : ".$matches[2];
    echo "<br>MESSAGE : ".$matches[3];
}
于 2012-09-17T13:55:43.537 に答える