Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] problem z wyrażeniem regularnym
Forum PHP.pl > Forum > Gotowe rozwiązania
opac
Witam. Mam problem ze skryptem, który ma na zadanie wyświetlać wypadku słowo Huraa! za kazdym razem kiedy bedzie pasowało wyrażenie regularne. Rozbijam wprowadzony tekst na tablice i za pomoca petli for sprawdzam czy w ierszu wystepuje wyrazenie. Lecz zauwazylem, ze skrypt dziala jedynie wtedy, kiedy TYLKO wpisze to wyrazenie. Jesli bede miał je np. w środku tekstu, to juz nie zadziała.
Prosze o pomoc w rozwiazaniu mojego problemu.

Oto kod:
  1. <html>
  2. <body>
  3. <form action=\"nowy.php\" method=\"post\">
  4.     <TEXTAREA name=\"dowcip\" rows=\"10\" cols=\"50\">Wpisz coś</TEXTAREA>
  5.     <input type=\"submit\" value=\"wyslij\">
  6.     </form>
  7. <?php
  8. $dowcip = $_POST['dowcip'];
  9. $row = explode(&#092;"n\",$dowcip);
  10. $j = count($row);
  11. for($i=0;$i<=$j;$i++) {
  12.     if(ereg(&#092;"^([0-9]{1,})k$\",$row[$i],$kat))
  13.     echo &#092;"Huraa!\";
  14. }
  15.  
  16. ?>
  17. </body>
  18. </html>
crash
Hmm błąd w ustawieniu pętli widzę... zamiast $j jest j...
opac
tak, moje niedopatrzenie. Lecz nadal coś tam jest źle, huraa pojawia się albo jak jest samo wyrazenie regularne, albo jak znajduje sie ono na koncu (w ostatnim wierszu). sadsmiley02.gif
crash
A na pewno to wyrażenie pasuje do $row[$i]?
opac
Tak, pasują wszystkie wiersze ktore zaczynaja sie od co najmniej jednej cyfry i konacza sie literą k. To $row[$i] ma 'przeleciec' kazdy wiersz w poszukiwaniu tegoz wyrazenia.

np. wpisze do formularza cos takiego

Witam serdecznie
wszystkich
12k
zgromadzonych
na uroczystości
99k
rozdania nagród

No i wg. mnie skrypt powinien dwa razy wyswietlić huraa, tymaczasem nie wyswietla ani razu (w tym wypadku)

Moze dałoby sie cos takiego zrobić w inny sposób?
crash
Już wim cool.gif W ereg daj:
  1. <?php
  2. trim($row[$i])
  3. ?>
opac
Tak jest! Oto chodziło! biggrin.gif

Dzięki za pomoc exclamation.gif
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.