[PHP-users 25824] Re: string 変数を規則性のある文字で分割して配列に格納

Yusuke ITO ito_yusuke @ white.livedoor.com
2005年 6月 14日 (火) 10:03:37 JST


伊東です、

--<abecky @ excite.co.jp> wrote:
> > $a = 'こんにちは。{aaa}山田花子です。{bbb}<b>ごきげんいかが?{aaa}</b>';
> > $str = mb_ereg_replace('(\{[a-z]+\})', "\t".'\1'."\t", $a);
> > $array = explode("\t", $str);

阿部さんに参考にしていただけたようでよかったです、
ただ、お気づきかと思いますが私のコードのままですと

・文字列中にタブ(\t)があると分割されてしまう
・先頭/末尾に{aaa}とかあると空の配列要素ができてしまう

ということになります。仕様にあわせて適宜変更ないし後処理を。

正規表現の勉強には私も手間取りましたね〜
人のコードを見て覚えたかな。(Perlをやっていたころ)

文書整形系のスクリプトだと、正規表現を多用しているのではないでしょうか?
PHPならPukiWikiとか…

--
伊東 祐介
ito_yusuke @ white.livedoor.com




-----------------------------------------------
2GBまでメールや画像など貯め放題!さらに特典いっぱい♪
livedoor ギガメーラープラス 【新登場】
http://gigamailerplus.livedoor.com/



PHP-users メーリングリストの案内