လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Preg_match function ကို သုံး. HTML အရင်းအမြစ်မှတိကျသော tag အကြောင်းအရာများကိုမည်သို့ extract လုပ်နည်း။ အသေးစိတ်စစ်ဆင်ရေးခြေလှမ်းများကဘာတွေလဲ။

Preg_match function ကို သုံး. HTML အရင်းအမြစ်မှတိကျသော tag အကြောင်းအရာများကိုမည်သို့ extract လုပ်နည်း။ အသေးစိတ်စစ်ဆင်ရေးခြေလှမ်းများကဘာတွေလဲ။

gitbox 2025-08-21
<span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-comment">// ဤဆောင်းပါးသည်မည်သို့အသုံးပြုရမည်ကိုရှင်းပြသည်PHPအိမ်တွင်းpreg_matchထုတ်ယူရန်လုပ်ဆောင်ချက်များကိုHTML源码အိမ်တွင်း特定标签ကေြနပ်သော。</span></span><span>
</span><span><span class="hljs-comment">// preg_match၎င်းသည်အစွမ်းထက်ပုံမှန်စကားရပ်ကိုက်ညီမှုကိရိယာတစ်ခုဖြစ်သည်,ရိုးရှင်းသောပုံစံကိုက်ညီဘို့သင့်လျော်သော。</span></span><span>
</span><span><span class="hljs-comment">// မည်မှျပင်,ရှုပ်ထွေးသည်HTMLဆောက်လုပ်ပုံ,အသုံးပြုရန်အကြံပြုသည်DOMDocumentပိုပြီးတည်ငြိမ်သောနည်းလမ်းများ。</span></span><span>
</span><span><span class="hljs-comment">// ဤဆောင်းပါးသည်သင်ယူမှုရည်ရွယ်ချက်များအတွက်ဖြစ်လိမ့်မည်,တင်ပြpreg_matchတည်နေ提取标签အိမ်တွင်း基本用法。</span></span><span>
</span><span><span class="hljs-meta">?&gt;</span></span><span>

&lt;hr&gt;

&lt;h1&gt;အဲဒါကိုဘယ်လိုသုံးရမလဲpreg_matchထံမှ function ကိုHTMLSource Code မှတိကျသော tag အကြောင်းအရာများကိုထုတ်ယူပါ?အသေးစိတ်စစ်ဆင်ရေးခြေလှမ်းများကဘာတွေလဲ?&lt;/h1&gt;

တည်နေWebဖွံ့ဖြိုးမှုအောက်မှာ,ကျနော်တို့မကြာခဏဖို့လိုအပ်ပါတယ်HTMLအချို့သောတိကျသော tag အကြောင်းအရာများကိုအရင်းအမြစ်ကုဒ်မှထုတ်ယူပါ,比如提取页面အိမ်တွင်း标题、image address သို့မဟုတ်စာပိုဒ်စာသားကိုစာသား。ခွဲခြမ်းစိတ်ဖြာပေမယ့်HTMLအကြံပြုအသုံးပြုမှုDOMparser နှင့်အခြားကိရိယာများ,但တည်နေတစ်些简单的场景中,အသုံးပြု`preg_match`လုပ်ဆောင်ချက်များသည်အလုပ်များကိုလျင်မြန်စွာပြီးမြောက်နိုင်သည်。本文将详细讲解如何အသုံးပြု`preg_match`မှHTMLSource Code မှသတ်မှတ်ထားသော tag ၏အကြောင်းအရာကိုထုတ်ယူပါ。

</span><span><span class="hljs-comment">## တစ်、သင်ကြားpreg_matchလုပ်ဆောင်ချက်များ၏အခြေခံအသုံးပြုမှု</span></span><span>

`preg_match`ဟုတ်ကဲ့PHPပုံမှန်စကားရပ်ကိုက်ညီမှုလုပ်ဆောင်ရန်အသုံးပြုသောလုပ်ဆောင်ချက်များကို,အခြေခံ syntax အောက်ပါအတိုင်းဖြစ်သည်:

```php
</span><span><span class="hljs-title function_ invoke__">preg_match</span></span><span>( </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$pattern</span></span><span> , </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$subject</span></span><span> , </span><span><span class="hljs-keyword">array</span></span><span> &amp;</span><span><span class="hljs-variable">$matches</span></span><span> = </span><span><span class="hljs-literal">null</span></span><span> )
</span></span>
  • $ ပုံစံ - ပုံမှန်စကားရပ်

  • $ အကြောင်းအရာ - ရှာဖွေရန် string (i.e. html source code)

  • $ ကိုက်ညီမှု - အကယ်. ပွဲကိုအောင်မြင်စွာအောင်မြင်ပါကကိုက်ညီသောရလဒ်ခင်းကျင်းမှုကိုပြန်ပေးလိမ့်မည်

Return Value သည် 1 ကို အောင်မြင်စွာယှဉ်ပြိုင်နိုင်ပြီးမတိုက်ဆိုင်မှုနှင့်ကိုက်ညီရန် 0 ဖြစ်သည်

2 ။ ဥပမာ - <title> tag အကြောင်းအရာကို HTML ရှိ Extract လုပ်ပါ

<title> tag မှအကြောင်းအရာကိုမည်သို့ထုတ်ယူရမည်ကိုပြသည့်ရိုးရှင်းသောဥပမာတစ်ခုမှာ -

 <span><span><span class="hljs-variable">$html</span></span><span> = </span><span><span class="hljs-string">'&lt;html&gt;&lt;head&gt;&lt;title&gt;这ဟုတ်ကဲ့网页标题&lt;/title&gt;&lt;/head&gt;&lt;body&gt;ကေြနပ်သော&lt;/body&gt;&lt;/html&gt;'</span></span><span>;
</span><span><span class="hljs-variable">$pattern</span></span><span> = </span><span><span class="hljs-string">'/&lt;title&gt;(.*?)&lt;\/title&gt;/i'</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">preg_match</span></span><span>(</span><span><span class="hljs-variable">$pattern</span></span><span>, </span><span><span class="hljs-variable">$html</span></span><span>, </span><span><span class="hljs-variable">$matches</span></span><span>);

</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$matches</span></span><span>[</span><span><span class="hljs-number">1</span></span><span>]; </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း:这ဟုတ်ကဲ့网页标题</span></span><span>
</span></span>

ပုံမှန်စကားရပ်ရှင်းပြချက်:

  • <title> နှင့် </ title> : အစနှင့်အဆုံး tags များနှင့်ကိုက်ညီသည်

  • (။ *?) - လောဘမရှိတဲ့ပုံစံနဲ့လိုက်ဖက်တဲ့အလယ်မှာပါ 0 င်တဲ့အကြောင်းအရာ

  • / i : အမှုကိုလျစ်လျူရှုပါ

3 ။ tags များစွာကိုထုတ်ယူသောအခါကျွန်ုပ်ဘာလုပ်သင့်သနည်း။

Preg_match သည် ပထမဆုံး ကိုက်ညီသောအကြောင်းအရာနှင့်သာကိုက်ညီနိုင်သည်။ အကယ်. သင်သည်တူညီသောအမှတ်အသားများမျိုးစုံနှင့်ကိုက်ညီလိုပါက <p> အပိုဒ်များကဲ့သို့သော preg_match_all function ကိုသုံးရန်လိုအပ်သည်။

ဥပမာ -

 <span><span><span class="hljs-variable">$html</span></span><span> = </span><span><span class="hljs-string">'&lt;p&gt;第တစ်段&lt;/p&gt;&lt;p&gt;အပိုဒ် 2&lt;/p&gt;'</span></span><span>;
</span><span><span class="hljs-variable">$pattern</span></span><span> = </span><span><span class="hljs-string">'/&lt;p&gt;(.*?)&lt;\/p&gt;/i'</span></span><span>;
</span><span><span class="hljs-title function_ invoke__">preg_match_all</span></span><span>(</span><span><span class="hljs-variable">$pattern</span></span><span>, </span><span><span class="hljs-variable">$html</span></span><span>, </span><span><span class="hljs-variable">$matches</span></span><span>);

</span><span><span class="hljs-title function_ invoke__">print_r</span></span><span>(</span><span><span class="hljs-variable">$matches</span></span><span>[</span><span><span class="hljs-number">1</span></span><span>]); </span><span><span class="hljs-comment">// ထုတ်လုပ်ခြင်း:Array ( [0] =&gt; 第တစ်段 [1] =&gt; အပိုဒ် 2 )</span></span><span>
</span></span>

4 ။ မှတ်စုများ

  1. HTML အသိုက်ပြ problem နာ - ပုံမှန်အသုံးအနှုန်းများသည် niv> <div> <span ရှိအကြောင်းအရာများအတွင်းရှိ div ၏အကြောင်းအရာများကိုထုတ်ယူခြင်းကဲ့သို့ပုံမှန်အသုံးအနှုန်းများကိုမှန်ကန်စွာမခွဲနိုင်ပါ။

  2. လုံခြုံရေး - သုံးစွဲသူများမှထည့်သွင်းထားသော HTML ကိုပြုပြင်သည့်အခါ XSS တိုက်ခိုက်မှုများကိုကာကွယ်ရန်လုံခြုံရေးပြုပြင်ထုတ်လုပ်မှုကိုသေချာအောင်လုပ်ပါ။

  3. စွမ်းဆောင်ရည်ဆိုင်ရာပြ issues နာများ - ပုံမှန်အားဖြင့်ခွဲခြမ်းစိတ်ဖြာမှုစွမ်းဆောင်ရည်သည်အကြီးစား HTML စာရွက်စာတမ်းများနည်းပါးသည်

5 ။ အကျဉ်းချုပ်

preg_match နှင့် HTML tag အကြောင်းအရာများကိုဖြည်ချခြင်းသည်ရိုးရှင်းသော HTML ဖွဲ့စည်းတည်ဆောက်ပုံများကိုကိုင်တွယ်ရန်အလွန်ကောင်းမွန်သည်။ ပုံသေပါဝင်သောအကြောင်းအရာများနှင့်ကောင်းမွန်စွာပုံစံချထားသောအကြောင်းအရာများနှင့်အတူကိုင်တွယ်သောအခါ၎င်းသည်အလုပ်များကိုလျင်မြန်စွာနှင့်ထိရောက်စွာဖြည့်ဆည်းပေးနိုင်သည်။ သို့သော်ရှုပ်ထွေးသော (သို့) အသိုက် (HTML ဖွဲ့စည်းတည်ဆောက်ပုံများနှင့်ရင်ဆိုင်ရသောအခါပရော်ဖက်ရှင်နယ်ခွဲခြမ်းစိတ်ဖြာနည်းများကိုထည့်သွင်းစဉ်းစားသင့်သည်။ Mastering Preg_match သည် သင်၏ပုံမှန်စကားရပ်စွမ်းရည်ကိုတိုးတက်စေရုံသာမကတိကျသောအခြေအနေများတွင်အလွယ်တကူပြုလုပ်နိုင်သည်။

 <span></span>
  • သက်ဆိုင်သောတက်(ဂ်)များ:

    HTML