Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Wyrażęnia regularne, wyciąganie danych z ciągu
Forum PHP.pl > Forum > Przedszkole
stroju
mam taki kod:
  1. <table width="100%" cellspacing="0" border="0" cellpadding="0">
  2. <tr>
  3. <td width="50%" valign="top" >
  4. <table width="100%" cellspacing="0" border="0" cellpadding="0">
  5. <tr>
  6. <td width="50%" valign="top" align="center">
  7. <b>{L_AVATAR}</b>
  8. </td>
  9. </tr>
  10. <tr>
  11. <td width="50%" valign="top" align="center">
  12. {AVATAR}<br />
  13. {STATUS}
  14. </td>
  15. </tr>
  16. </table>
  17. </td>
  18. <td width="50%" valign="top" rowspan="2">
  19. <table width="100%" cellspacing="0" border="0" cellpadding="0">
  20. <!-- ROW sign -->
  21. <tr>
  22. <td align="center" colspan="2">
  23. <b>{L_SIGN}</b>
  24. </td>
  25. </tr>
  26. <tr>
  27. <td align="left" colspan="2">
  28. {SIGN}
  29. </td>
  30. </tr>
  31. <!-- ROW sign -->


i szukam funkcji, która z tego ciągu który umieszczam w zmiennej wyciągnie mi dane między komentarzami "<!-- ROW sign -->".
Majzel
ja przyłączę się do pytania, mam takie coś:
  1. <?php
  2. preg_match('/^(<!-- ROW sign -->)+ * (<!-- ROW sign -->)+$/', $ciag, $wynik);
  3. ?>

ale zwraca pustą tablice, co jest źle?
stroju
no właśnie mi też ciągle pustą tablicę zwraca
zulus
znak ^ na początku wyrażenia oznacza początek łańcucha, analogicznie $ na końcu, koniec łańcucha.
Zatem podane wyrażenie zwróci wyniki, jeżeli cały dokument będzie zakomentowany
stroju
czyli jak inaczej można to przedstawić??

to dla mnie dość pilne
erix
Cytat
ale zwraca pustą tablice, co jest źle?

Masz nie "zakaretkowane" znaki specjalne. Poza tym, kawałki przeznaczone do obrabiania wstawia się w nawiasach.

Cytat
to dla mnie dość pilne

Czyichś zleceń nie będziemy wykonywać, na gotowca nie licz.
stroju
zgodnie z tym po napisałeś:
  1. <?php
  2. preg_match("#<!-- ROW sign -->(.*?)<!-- ROW sign -->#si", $plik2, $wynik);
  3. ?>


daje wynik:
  1. <?php
  2. $wynik[0] = '<!-- ROW sign -->  <tr>  <td align="center" colspan="2">  <b>{L_SIGN}</b>  </td>  </tr>  <tr>  <td align="left" colspan="2">  {SIGN} </td>  </tr>  <!-- ROW sign -->';
  3. $wynik[1] = '<tr> <td align="center" colspan="2"> <b>{L_SIGN}</b> </td> </tr> <tr> <td align="left" colspan="2"> {SIGN} </td> </tr>';
  4. ?>


to jest to czego szukałem, dzieki
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.