PDA

View Full Version : بدست آوردن بخشی از یک رشته که با داشتن آغاز و پایانش



barnamenevis2016
دوشنبه 11 خرداد 1394, 12:30 عصر
سلام...
یک رشته داریم....مثلا hello world and php.... حالا آیا تابعی هست که بهش world رو بدی به عنوان ابتدا و php رو که اولین php هست بعد از کلمه world رو هم بدی بهش به عنوان پایان و میان این دو رو که and هست رو به ما بده....؟:متفکر:

H:Shojaei
دوشنبه 11 خرداد 1394, 12:46 عصر
$str="hello world and php.";
preg_match('/world(.*)php/', $str,$matches);
print_r($matches);

barnamenevis2016
دوشنبه 11 خرداد 1394, 13:48 عصر
مرسی...فقط این کد شما یک گافی می ده...همونطور که من گفتم می خوام که مثلا کلمه php رو که بهش می دیم...اولین php باشه بعد از کلمه world...که کد شما این کار رو نمی کنه...
مثلا اگر متغیر str باشه:

$str="hello world and php and html and php.";
نتیجه کد بالا به ما اینو می ده and php and html and در حالی که من عبارت and رو می خوام فقط...و از طرفی اگر یک عبارت دومی هم داشته باشیم در ادامه که با world شروع و با php تمام شده باشه...میان این دو رو چطور پیدا کنیم....و همین اگر چندین چنین عباراتی باشه....
---------------
آقا ok شد از کد زیر می ریم:

preg_match_all('/world(.*?)php/', $str,$matches);
ممنون