regex_replaceで文字列が一つしか置換されない時は

MTではグローバル・モディファイアリファレンスという
ものを使っていろいろタグ出力を加工できます。


その中でも非常に熱いのがregex_replaceな訳ですが、
これは完全にPerlのそれに準じたものな訳です。


つまり本文中のすべての「みかん」を「オレンジ」に
置換したいとすれば、

<$MTEntryBody regex_replace="/みかん/","オレンジ"$>

とすれば良さそうですが、これでは

オレはみかんが好きすぎで、将来はみかんと結婚するんだ。
↓
オレはオレンジが好きすぎで、将来はみかんと結婚するんだ。

となってしまいます。
これを解決するには、

<$MTEntryBody regex_replace="/みかん/g","オレンジ"$>

と、置換演算子gを指定する必要があります。
これで

オレはみかんが好きすぎで、将来はみかんと結婚するんだ。
↓
オレはオレンジが好きすぎで、将来はオレンジと結婚するんだ。

という風になります。
もう泣きそう。


第7章 正規表現
http://www.kent-web.com/perl/chap7.html