Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wyrażenia regularne
Forum PHP.pl > Forum > Przedszkole
ydy10
mam w tekscie jeden raz <h1>aaa</h2>
chce to co jest miedzy znacznikami <h1> - przypisac sobie do zmiennej, ale:
ponizej zrobilem wzor aby wyciagnac ze srodka tekst - ale jak go przypisac do zmiennej - bym nie mail tego co jest przed <h> za </h> i znacznikow <h> - chce sam tekst aaa

  1. <?php
  2. $au = preg_replace("(<h1>(.*?)</h1>)", "1", $wynik[1]);
  3. ?>


znalazlem funkcje
Kod
preg_match_all('#<h1>(.*?)</h1>#si', $wynik[1], $au);


ale zwraca tekst ze znacznikami <h> sad.gif
yaotzin
Jest wiele sposobów wykonania tego programu hm... skryptu czy jak to tam nazwać Co programista to pewnie inny pomysł.... można użyć explode do rozdzielenie wg <h1> i </h1> wówczas będzie to zapewne druga pozycja tablicy zwróconej, można się bawić z strpos, stristr aby uzyskać to co potrzebujemy z twojego ciągu, i jest jeszcze substr... a co do wyrażeń regularnych hm... napisałbym coś ale jestem zbyt śpiący aby myśleć teraz logicznie nad odpowiednim wzorem wyrażenia że tak powiem sleepysmiley03.gif
ydy10
wiem że można oto tak brutalnie tongue.gif
ale myslalem ze mozna jakos wyrazenie reg. czy funkcje zminenic i od razu ladnie wyjdzie tongue.gif
Kicok
Cytat(ydy10 @ 22.02.2007, 21:48:20 ) *
znalazlem funkcje
Kod
preg_match_all('#<h1>(.*?)</h1>#si', $wynik[1], $au);


ale zwraca tekst ze znacznikami <h> sad.gif


Zwraca też bez znaczników, tylko musisz pobrać odpowiednie wyniki:

  1. <?php
  2. $napis = 'bla bla <h1>pierwszy napis w H1</h1> a chwile potem: <H1>drugi napis w H1</H1> ;]';
  3. preg_match_all('#<h1>(.*?)</h1>#si', $napis, $znalezione);
  4.  
  5. echo('<pre>');
  6. echo(htmlspecialchars(var_export($znalezione, true)));
  7. echo('</pre>');
  8. ?>
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.