Książka: PHP4 Zaawansowane programowanie s.214-215
Niestety w tej książce nie znalazłam wyjaśnienia, więc pytam tu.

Jeżeli chcemy obsłużyć liczby z ewentualną końcówka dzisiętną używamy wyrażenia:
Kod
"^0|-?[1-9][0-9]*(,[0-9]{1,2})?$"

I tu jest wszystko zrozumiałe, ale nastepny kod służy do obsługi tych samych liczb co wyżej plus ewentualnie seperatora tysięcy w postaci "."(kropki):
  1. <?php
  2. $a = '1005.5.2.6..5000,9';
  3.  
  4. if(preg_match("/^0|-?[1-9]+|[0-9]{1,3}(.[0-9]{3})*(,[0-9]{1,2})?$/",$a)) echo "good";
  5. ?>

Dla przykładu który podałem również wyświetli good, ale to jest akurat mniej ważne. Bardziej mnie interesje co ma oznazać '+' i 'OR' po fragmencie "^0|-?[1-9]" questionmark.gif '+' normalnie oznacza "jeden lub więcej", ale tu do wyboru oprócz liczb z zakresu[1-9] ma być też dostępne 0 tak jak w przypadku do obsługi liczb bez separatora.

Może to zagmatwane, ale musze się dowiedzieć co i jak bo moja wiedza będzie niekompletna winksmiley.jpg Pozdrawiam.

***EDIT***
Ja nierozumiem smile.gif Ludzie piszą tu takie reegexpy których ja nawet z podręcznikiem po polsku nie moge zrozumieć( choćby wykorzystanie podzapytań wraz z \\cyfra) a nie może ktoś podjąć próby wyjaśnienia tego. Jakkolwiek problem jest wciąż aktualny.