Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Jak wyciągnąć tekst za pomocą preg_match
XnIcRaM
post
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 18.01.2009

Ostrzeżenie: (0%)
-----


Jak z poniższego kodu za pomocą preg_match wyciągnąć liczbę znajdującą się w znacznikach <b></b>, we fragmencie "Znaleziono <b>XXXX</b> pasujących odnośników<br>", zaznaczę tylko że wklejony przezemnie kod to tylko niewielki fragment całości, więc wyciągnięcie bezpośrednio z <b></b> odpada i trzeba się oprzeć na jakimś dłuższym fragmencie, kombinuję, kombinuję ale nic mi z tego nie wychodzi, czy ktoś pomoże?
Kod
<div style="padding: 10px;">
<div>
    <form>
    szukana fraza: <input style="width: 300px;" name="q" value="t"><input value="szukaj" type="submit">
         <input name="c" value="film" checked="on" type="checkbox">tylko tytułu filmu     </form>
        Znaleziono <b>1753</b> pasujących odnośników<br>
    </div>
<div style="margin-bottom: 10px;">
    </div>
<div style="padding-top: 10px;">
        <hr>
</div>
<div class="cl"></div>
<ul style="display: block; width: 700px; margin-left: 15px;" id="searchFixCheck">
                    <li style="padding: 5px;" class="gr5">
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
magra
post
Post #2





Grupa: Zarejestrowani
Postów: 34
Pomógł: 8
Dołączył: 5.10.2004

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $preg = preg_match('|searchResultTitle" href="([^"]*)">|', $text, $matches);
  3. ?>
Go to the top of the page
+Quote Post
XnIcRaM
post
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 18.01.2009

Ostrzeżenie: (0%)
-----


tak sobie kombinuję i kombinuję, na trzy wyrażenia regularne jakie mam w swoim skrypcie tylko jedno udało mi się zrobić samemu (no w sumie ze sporą pomocą googli), teraz doszedłem że to co powyżej podpowiedział mi kolega magra można zrobić jeszcze na kilka sposobów m.in.

  1. <?php
  2. $preg = preg_match('|searchResultTitle" href="([^"]*)">|', $page, $matches);
  3.    $preg = preg_match('#searchResultTitle" href="([^"]*)">#', $page, $matches);
  4.    $preg = preg_match('#searchResultTitle" href="(.+?)">#', $page, $matches);
  5. ?>


Szukałem gdzieś jakiegoś dobrego opisu wszystkich znaczników, wzorców, modyfikatorów i w ogóle jakiegoś przystępnego opisu PCRE (bo konkretnie to mnie najbardziej interesuje), niestety albo słabo szukam albo nie do końca wiem co mam szukać ale np nie udało mi się znaleźć odpowiedzi choćby na takie (zapewne) proste pytania jak np:
1. jaka jest różnica między użyciem | a # w pierwszych dwóch przykładach, bo na pierwszy rzut oka efekt działania jest ten sam, ale zapewne jakaś różnica
2. nie mam w ogóle pojęcia co oznacza ciąg znaków w nawiasach () w pierwszym i w drugim przykładzie
3. Jeśli się nie mylę to w trzecim przykładzie rozumiem znaczenie uzytych znaków ale tylko pojedynczo jak one działają razem to już nie jestem pewien . oznacza jeden dowolny znak + oznacza że to co przed nim stoi moze wystąpić dowolną ilość razy ale musi być przynajmniej raz natomiast ? oznacza że to co przed nim stoi może pokazać się raz lub w ogóle ale co oznacza .+? nie wiem wychodzi mi na to że oznacza wszystko albo nic czyli że może tam być dowolny ciąg znaków a może również być pusty

W założeniu mam do stworzenia jeszcze kilkanaście wyrażeń nie chciałbym o każde pytać na forum jednak moze znajdzie się ktoś kto będzie potrafił wskazać mi jakieś konkretne materiały na ten temat?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.12.2025 - 20:12