Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zachowanie się funkcji preg_match
Jozjasz
post
Post #1





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 11.09.2009

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


Witam

Ostatnio trenuję z funkcją preg_match. Zachodzę w głowę jednak dlaczego zachowuje się ona następująco, tzn. nie działa

1.
  1. //2. Sprawdź czy występuje dokładnie 3 wystąpienia liery 'a' --> NIE DZIAŁA
  2. if(preg_match('/a{3}/',"aaaaa"))
  3. echo '2. jest';
  4. else
  5. echo '2. nie jest';
  6. echo '<br />';


Skoro jest 5 liter 'a', to skrypcik powinien zwrócić '2. nie jest'. Czy mógłby ktoś mnie oświecić dlaczego tak się nie dzieje?

2.
Chciałem napisać skrypt sprawdzający czy dany string zawiera tylko liczy od 0 do 9. Jednak jeśli poniżej zmienna $a ma więcej niż 12 znaków/cyfr, to zwraca false. Dlaczego tak się dzieje, skad ta magiczna granica 12 znaków.

  1. //nie może być wiecej jak 12 cyfr w liczbie?questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif
  2. $a = 790900088190;
  3. //10.
  4. if(preg_match("/^[0-9]+$/",$a))
  5. echo '10. jest';
  6. else
  7. echo '10. nie jest';
  8. echo '<br />';


Za wyjaśnienia wielkie dzięki

Ten post edytował Jozjasz 22.04.2013, 22:05:53
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 20.08.2025 - 04:25