regex: preg_match için eregi php kodunu dönüştürmek

2 Cevap php

I eregi($1,$2) preg_match("/$1/i",$2) dönüştürmek için uygun normal ifadeyi bulmaya çalışıyorum

i need to consider if there will be functions with () in it, and they may appear more then once. can anyone please provide the proper regular expression to do so ?

teşekkürler

2 Cevap

Kodunu ayrıştırmak için normal bir ifade kullanmak istemiyorum.

Sen bir ayrıştırıcı kullanmak istiyorum.

eregi olduğundan, sizin kaynak kodunu değiştirmek için çalışıyoruz deprecated? Bu regex hile yapacak:

$source= <<<STR
eregi(\$1, \$2);
eregi('hello', 'world');
STR;

$source2= preg_replace("/eregi\(['\"]*([^\'\"),]+)['\"]*,\s*['\"]*([^'\"),]+)['\"]*\)/", 'preg_match("/$1/i", "$2")', $source);

var_dump($source2);