Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Wyrażenia regularne
ydy10
post 22.02.2007, 21:48:20
Post #1





Grupa: Zablokowani
Postów: 87
Pomógł: 0
Dołączył: 29.07.2006

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


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
Go to the top of the page
+Quote Post
yaotzin
post 22.02.2007, 23:16:23
Post #2





Grupa: Zarejestrowani
Postów: 157
Pomógł: 0
Dołączył: 12.02.2007
Skąd: Zielona Góra

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


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


--------------------
------
Per Aspera Ad Astra
Go to the top of the page
+Quote Post
ydy10
post 23.02.2007, 09:56:07
Post #3





Grupa: Zablokowani
Postów: 87
Pomógł: 0
Dołączył: 29.07.2006

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


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
Go to the top of the page
+Quote Post
Kicok
post 23.02.2007, 10:07:09
Post #4





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

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


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. ?>


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 14.07.2025 - 18:31