1

ターゲットテキストは次のようなものです。

Lorem ipsum dolor#sit#amet、consectetur#adipisicing#elit、sed do#eiusmod#tempor incididunt ut Labore et doloremagnaaliqua。Ut enim ad minim veniam、quis nostrud exercitation ullamco Laboris nisiutaliquip。

ハッシュタグ付きの#sit#、#adipisicing#、#eiusmod#に対応するデータは、次のような配列になります。

array(
  '42' => 'sit somewhere',
  '43' => 'adipisicing...',
  '63' => 'eiusmod...'
)

preg_replaceまたはpreg_replace_callbackを使用して、ハッシュタグを配列値に順番に置き換えたい。結果を取得するには:

Lorem ipsum dolor <a href="/link/to/42" title="sit somewhere">#sit#</a> amet, consectetur <a href="link/to/43" title="adipisicing...">#adipisicing#</a> elit, sed do <a href="/link/to/63" title="eiusmod...">#eiusmod#</a> tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip.

どうすればそれを達成できますか?

4

2 に答える 2

0
$search = array(
    '#sit#',
    '#adipisicing#',
    '#eiusmod#'
    );
$replacement = array(
    '42' => 'sit somewhere',
    '43' => 'adipisicing...',
    '63' => 'eiusmod...'
    );
$str = str_replace($search, $replacement, $str);
于 2011-11-07T15:58:22.313 に答える
0

おそらく str_replace を使用したほうがよいでしょう。

http://www.php.net/manual/en/function.str-replace.phpを参照してください。

于 2011-11-07T14:45:51.090 に答える