hossein
6 سال پیش توسط hossein مطرح شد
7 پاسخ

پیدا کردن مقدار در رشته

چطوری میشه مثلا مقدار یه تگ رو بدست بیام؟
با رگولار اکسپرشن – ریجکس سعی کردم ولی نشد
مثلا کد

<ul class="text">
    <li class="class-name-one aa">
              <a class="ProfileNav-stat ss ff" data-nav="nmc" tabindex="0" data-original-title="mm">
                <span class="ProfileNav-label" aria-hidden="true">عنوان</span>
                  <span class="u-hiddenVisually">عنوان دو</span>
                <span class="ProfileNav-value" data-count="20449" data-is-compact="true">مقدار موردنظر اول  </span>
              </a>
    </li>

    <li class="class-name-one bb">
              <a class="ProfileNav-stat ss ff" data-nav="nmc" tabindex="0" data-original-title="mm">
                <span class="ProfileNav-label" aria-hidden="true">عنوان</span>
                  <span class="u-hiddenVisually">عنوان دو</span>
                <span class="ProfileNav-value" data-count="20449" data-is-compact="true">مقدار موردنظر دوم  </span>
              </a>
    </li>
</ul>

من مقدار اول میخوام بریزم تو یه متغییر
بعد مقدار دوم رو میخوام بریزم تو یه متغییر دیگه

میشه لطف کنید اینو یکم راهنمایی کنید. خواهش میکنم


ثبت پرسش جدید
hossein
تخصص : توسعه دهنده
@emperatur133 6 سال پیش مطرح شد
0

لطفا یکی راهنمایی کنه


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 6 سال پیش مطرح شد
0

سلام. میتونید از simpleHtmlDom استفاده کنید.

http://simplehtmldom.sourceforge.net/

یه نگاه به لینک بالا بندازید مشخص هست.


hossein
تخصص : توسعه دهنده
@emperatur133 6 سال پیش مطرح شد
0

@khanzadimahdi

این روشش اشتباست . اصلا متد find نمیشناسه
خطای
Call to undefined method DOMNodeList::find()

میده


محمد صادقیان
تخصص : برنامه نویس وب - فریم ورک Lara...
@drcode.ir 6 سال پیش مطرح شد
0

دقیقا هدفتون از این کار چیه؟
توضیح بدید شاید یه راه حل ساده تر پیدا شد


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 6 سال پیش مطرح شد
0

متدش اشتباه نیست این پکیج استاندارد هست و تست شده هست (خود پکیج تست داره روی پکیج ران میشه و بیلد میده)
شما به صورت زیر باید عمل کنید:

// Create DOM from string
$html = str_get_html('<div id="hello">Hello</div><div id="world">World</div>');

echo $html->find('div', 1)->innerText = 'bar';

madadi
@madadi 6 سال پیش مطرح شد
0

سلام
منظورتون اینه؟

preg_match_all('|<li(.*)</li>|Uis',$yourString,$res)

1masoud
تخصص : php,laravel
@masoudproton 6 سال پیش مطرح شد
1

@emperatur133
شما اول این اطلاعات رو بریز داخل یک فایل txt که نامش f.txt باشه بعد این کد رو اجرا کن

$file=file_get_contents('f.txt');
preg_match_all('/<li [\W\w]*?>[\W\w]*?<\/li>/',$file,$i);

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام