[PHP-users 1715] php-4.0.6 + php4_mbregex-1.2.1 での mbereg_replace のグローバルオプション?

大川敏生 php-users@php.gr.jp
Mon, 03 Sep 2001 10:34:59 +0900


大川@名大と申します。

長いサブジェクトで失礼します。

知恵をお借りしたいのですが、
日本語化した PHP4.0.6 では、置換のコマンド(mbereg_replace)が装備されて
いないようでしたので、塚田様が提供して頂いている、php4_mbregex-1.2.1 を
モジュールとして組み込んで、日本語文字の置換をしているのですが、
当 mbereg_replace のオプションにグローバルオプションがありませんので、
文字列上の複数のパターンを同時に変更することができません。

具体的には、
デリミタを'<<'と'>>'にして挟まれた文字を'○○○'とかに置き換えたい。

mbereg_replace("[\<]{2}.*[\>]{2}","○○○",$HENSUU);

$HENNSUU を 

"きょうの天気は<<雨>>だけど明日は<<晴れ>>だといいな"

とすると、上記の変換式ですと、

"きょうの天気は○○○だといいな"

とい具合に初めと終わりのパターンしか認識されません。

どなたか良い方法がありましたら、教えてください。
最終手段はループで1文字づつ確認してゆく方法も考えられますが、
可能であればコマンド1つで解決したいです。

よろしくお願いします。


-- 
Toshiki Ohkawa    464-8601 名古屋市千種区不老町1
大川 敏生         名古屋大学 農学部・生命農学研究科 技術部
                  TEL:052-789-4233 FAX:052-789-4236