التعابير المنطقية: تحويل رمز PHP من eregi إلى preg_match

StackOverflow https://stackoverflow.com/questions/1930430

  •  20-09-2019
  •  | 
  •  

سؤال

وأنا أحاول أن يجد التعبير العادي السليم لتحويل eregi($1,$2) إلى preg_match("/$1/i",$2)

ولست بحاجة للنظر في ما إذا كان سيكون هناك وظائف مع () في ذلك، وأنها قد تظهر أكثر من مرة واحدة. يمكن لأي شخص يرجى تقديم التعبير العادي السليم للقيام بذلك؟

وذلك بفضل

هل كانت مفيدة؟

المحلول

وأنت لا تريد استخدام تعبير عادي إلى رمز تحليل.

وتحتاج إلى استخدام محلل.

نصائح أخرى

هل تحاول تعديل التعليمات البرمجية المصدر، منذ eregi هو متوقف ؟ وهذا رجإكس تفعل خدعة:

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

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

var_dump($source2);
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top