PDA

View Full Version : اشکا در دستورات regular expression



mehdi4467
پنج شنبه 02 دی 1389, 17:07 عصر
سلام
من چند خط برنامه نوشتم به این شکل:

$homepage = file_get_contents('http://localhost/live.htm');
$p="/ 2.+d /";

preg_match_all($p, $homepage, $matches, PREG_SET_ORDER);
$w="";
foreach ($matches as $val)
{
$w = $w.$val[0];
echo $w;
echo "<br>";
}و با توجه به p$ می خواهم کلیه عباراتی را پیدا کنم که با 2 شروع شده و به d ختم می شود. به عنوان مثال من در ادرس داده شده چنین عبارتی دارم:

<font face=tahoma size=2>سايپا کرج</td>بنابراین به نظر من باید

2>سايپا کرج</tdبرگشت داده شود ولی با جرای کد بالا هیچ چیزی برگشت داده نمی شود.

Vahid Faraji
پنج شنبه 02 دی 1389, 17:48 عصر
اولا بايد فاصله ها رو از ابتدا و انتهاي متغير p$ حذف كني يعني به اين صورت:
$p="/2.+d/";

ثانيا من با اين مثال تست كردم درست بود.
<font face=tahoma size=2>abc</td>