[PHP-users 33134] Re: mb_ereg_replace について

Tomoo Nomura nomurat @ tmo.co.jp
2008年 1月 22日 (火) 10:03:08 JST


まつもと さん

> まつもと@入谷です。
>
> どうしても気になってしまったので……
>   
>> $num = mb_ereg_replace( "(.*申込番号  ?)(\d{1,5})( ? .*)",
>> "$2", $rtn, "m" ) ;
>>     
>   ^^^^ ここは、\\2 ではありませんか?
>   
sedやperlでは、評価式内での参照は\1,\2で、式外での参照は$1,$2と相場が決
まっていたので、疑わずにそうしておりましたが..…
phpでも、preg_replace では、"$2" と書いてOKです。
よくよく調べると、ereg_xxx は "$2"だめなようですね。おっしゃるとおり
"\\2" が正しようです。
ということで、最初の質問で提示した式ですが、単に "$2" を "\\2" に変える
だけでOKでした。

$num = mb_ereg_replace( "(.*申込番号  ?)(\d{1,5})( ? .*)",
"\\2", $rtn, "m" ) ;


有難うございました。

野村

-- 
****** Nomura Technical Management Office Ltd. *****************
 Tomoo Nomura      nomura @ tmo.co.jp       http://www.tmo.co.jp/
    Phone: +81-78-797-0240 Fax: +81-50-3428-2033
 Worldwide Airline Timetable 'Flight Planner'
 European Electronic Timetable 'HAFAS'         ValueFax Support
****************************************************************



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