0

のすべての出現を置き換える文字列を取得しました[CODE]...[/CODE]preg_replace_callbackこれらのタグのコンテンツを処理する関数を呼び出すことができます。しかし、それらの出現の周りにあるすべての文字列を操作するにはどうすればよいですか?

例:

$str = "Hello, I am a string with [CODE]some code[/CODE] in it";

さて、この場合preg_replace_callbackは のコンテンツを操作します。しかし、この文字列の他のすべてのテキストについては、別のことをしたいと思います。どうすればこれを最善の方法で行うことができますか?[CODE]some codeHello, I am a string within it

助けてくれてありがとう!

フロー

4

1 に答える 1

2

正規表現を見ることができればもっと簡単ですが、要点は、キャプチャグループが必要だと思うということです。

これらの領域を括弧で囲まれたグループに配置することで、これらの領域に個別にアクセスできるはずです。各セクションは、コールバックで利用できるようになります。したがって、(大雑把に)のようなもの/(.*)(\[CODE\].*\[/CODE\])(.*)/は、コールバックに一致の配列を渡す必要があります

于 2012-02-24T13:14:10.127 に答える