نوشته شده توسط
sd702004
اگر فرمت فایلتون ویندوزه باید کارکتر \n رو با \r\n جایگزین کنید. کد رو اگر بصورت زیر بنویسید چه فرمت فایل unix باشه چه windows کار میکنه:
preg_match("/$text\r?\n(.*)/", $string, $matches);
در unix خط جدید (new line) با کارکتر LF ایجاد میشه اما در ویندوز با دو کارکتر CR و LF.
CR = \r
LF = \n
کدی که نوشتین اگر جنبه تمرینی نداره چندان جالب نیست و بهتره از روش دیگری استفاده کنید.
واقعا دستت درد نکنه مشکل حل شد
یک موضوع دیگه این که اگر بخواهم در متن ذیل
$string='ME
salam
123fft
gg
654';
$text="salam";
بعد سلام یک سطر خالی هست طوری قرار بدهم که سطر اگر خالی بود سطر پایین تر را بخونه تا جایی که مقدار عددی باشه برای مقدار عددی از ([\d\/ \.]*) استفاده میکنم الان کد ذیل رو چطوری تغییر بدم که بعد salam اولین مقدار عددی را بخونه که 123 هست کمی پیچیده شد
preg_match("/$text\r?\n([\d\/ \.]*)/", $string, $matches);