Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Wyrażenie regularne
di@blo
post
Post #1





Grupa: Zarejestrowani
Postów: 94
Pomógł: 0
Dołączył: 9.03.2005

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


Mam takie wyrażenie '/^([a-z]*)/i' ktore filtruje wszystko oprocz liter ale chcialbym jeszcze bardziej ograniczyc aby maksymalnie moglo wystepowac 6 cyfr probowalem tak: '/^([a-z]{0-6})/i' niestety nie dziala (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) i gdzie wrzucic przecinek aby mi go nie odrzucalo podczas filtrowania? '/^([a-z\,]*)/i' ? i Jak sie ma do tego spacja czy bedzie filtrowalo czy musze dodac do wyrazenia? jesli tak to co?
Z gory dzieki za pomoc

Ten post edytował di@blo 6.09.2008, 12:11:24
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
kampio
post
Post #2





Grupa: Zarejestrowani
Postów: 15
Pomógł: 1
Dołączył: 22.07.2008

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


nie do końca zrozumiałem ale
wydaje mi się że przedziały podajemy tak: {0,6}
a samo wyrażenie poszukiwania co najmniej 6 liczb to chyba tak:

'/^[0-9]{1,6}$/'
Go to the top of the page
+Quote Post
di@blo
post
Post #3





Grupa: Zarejestrowani
Postów: 94
Pomógł: 0
Dołączył: 9.03.2005

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


Niby masz racje ale wyrazenie '/^[a-z\_]{1,6}$/' mi nie dziala
Mam tak '/^([a-z\_]*)/' i wystarczy ze pozbede sie nawiasu okraglego jak w twoim przykladzie lub zamienie * na {0-6} i juz nie dziala (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
kampio
post
Post #4





Grupa: Zarejestrowani
Postów: 15
Pomógł: 1
Dołączył: 22.07.2008

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


'/^[a-z_]{1,6}$/' a tak?
Go to the top of the page
+Quote Post
wookieb
post
Post #5





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




/^[^a-z_]{1,6}$/i

Pamietaj ze to wyrazenie bierze pod uwage WSZYSTKO co nie jest podkreśleniem, litera. Ale białe znaki itd przepuści.

Ten post edytował wookieb 6.09.2008, 12:32:11
Go to the top of the page
+Quote Post
di@blo
post
Post #6





Grupa: Zarejestrowani
Postów: 94
Pomógł: 0
Dołączył: 9.03.2005

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


Tak dziala i skrypt przepuszcza tylko znaki i podkreślenie:

'/^([a-z_]{1,6})$/i'

Dodalem nawias okragły, mam jeszcze ptanie czy przed znakami takimi jak podkreślenie, przecinek musze dawac \ ? czy przepusci spacje? I pytanie zasadnicze czemu
{1,6} a nie {1-6}?
Go to the top of the page
+Quote Post
wookieb
post
Post #7





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Cytat(di@blo @ 6.09.2008, 14:07:24 ) *
{1,6} a nie {1-6}?

bo nie {1-6}... Na najgłupsze pytanie najgłupsza odpowiedź...

Musisz dawac \ przed znakami ktore sa specjalnie interpretowane przez regexa czyli np przed "." jeżeli chcesz zeby oczywiscie szukało kropki. No przecież powiedzialem, że przepuści wszystkie białe znaki.
wyrazenie twoje przepuszcza wszystko oprocz malych liter i _
Go to the top of the page
+Quote Post
di@blo
post
Post #8





Grupa: Zarejestrowani
Postów: 94
Pomógł: 0
Dołączył: 9.03.2005

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


Moze i glupia odpowiedz ale gdzies znalazlem mini kurs i bylo {0-6} widocznie blad

A co do białych znakow to nie przepuszcza '/^([0-9]{7,15})/s' dopiero jak zmienilem na '/^([0-9 ]{7,15})/s' to dziala

Ten post edytował di@blo 6.09.2008, 14:23:07
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 24.08.2025 - 07:50