Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] wyrażenie regularne, sprawdzenie obecności cyfr, liter oraz "-" i "_"
Maq2007
post 28.07.2007, 07:04:46
Post #1





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 27.06.2007

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


Witam,

trochę próbowałem pobawić się za pomocą wyrażeń regularnych aby mi sprawdzało przez preg_match poprawność wprowadzonego tekstu i jakoś mi nie wychodzi tongue.gif
Dlatego też prosiłbym aby ktoś napisał mi jak powinno wyglądać prawidłowe wyrażenie regularne które by przepuszczało jedynie tekst w którym znajdują się cyfry i litery oraz znaki "-" i "_", z tym że te znaki nie mogą się znajdować na początku, ani na samym końcu.
Oczywiście gdy w wyrażeniu znajduje się jakikolwiek inny znak to ma wywalać false ;]

Z góry wielkie dzięki za pomoc

Ten post edytował Maq2007 28.07.2007, 08:06:04
Go to the top of the page
+Quote Post
Kicok
post 28.07.2007, 09:01:28
Post #2





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

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


^ - oznacza początek tekstu
[a-zA-Z0-9] - oznacza małe i wielkie litery oraz cyfry
[a-zA-Z0-9_-] - oznacza małe i wielkie litery, cyfry, "_" oraz "-"
* - oznacza że dany element może wystąpić dowolną ilość razy (zero lub więcej)
[a-zA-Z0-9] - patrz wyżej
$ - oznacza koniec tekstu

Do tego preg_match" title="Zobacz w manualu PHP" target="_manual i sprawa załatwiona.


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
Maq2007
post 28.07.2007, 09:06:20
Post #3





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 27.06.2007

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


Takie coś to ja znajdę w pierwszym lepszym kursie, tylko jak to zlać w kupe biggrin.gif

Wczoraj wymodziłem już takie coś:

/^[0-9,a-z,A-Z,-,_]$/

ale coś nie chce działać, do tego nie załatwia to sprawy występowania znaków "-" oraz "_" na początku oraz końcu wyrażenia.
Go to the top of the page
+Quote Post
Kicok
post 28.07.2007, 09:10:59
Post #4





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

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


Po pierwsze zastanów się co chcesz znaleźć. O ile dobrze Cię zrozumiałem to:
"Na początku tekstu ma się znaleźć litera lub cyfra (a nie "_" ani "-"), po której ma być dowolna ilość liter, cyfr, "_" oraz "-", a na samym końcu tekstu ma być jeszcze litera albo cyfra (a nie "_" ani "-")"

Teraz porównaj sobie to z moim powyższym postem, to zauważysz, że dostałeś praktycznie gotowca.


PS. Skąd ci się te przecinki wzięły w klasie snaków? :|

Ten post edytował Kicok 28.07.2007, 09:11:56


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
Maq2007
post 28.07.2007, 09:39:49
Post #5





Grupa: Zarejestrowani
Postów: 30
Pomógł: 0
Dołączył: 27.06.2007

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


Tak, mniej więcej oto mi chodziło...
Z tym że nadal mam problem ze skonstruowaniem wyrażenia tongue.gif

Co do przecinków to na webhelpie znalazłem przykład gdzie stosują przecinki i dlatego użyłem je tongue.gif
http://php.webhelp.pl/index.php?id=32&...&ac=readtut
Go to the top of the page
+Quote Post
Kicok
post 29.07.2007, 14:30:54
Post #6





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

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


Z całym szacunkiem dla Pani Kamili Urbaniak, ale wyrażenie do walidacji emaili które ułożyła to o kant d... rozbić ;] I to nie tylko dlatego, że uzna kowalski@serwer.info za nieprawidłowy adres email. Składnia wyrażenia (czyli m.in. te przecinki ;]) też pozostawia wiele do życzenia.

Na googlach można znaleźć wiele ciekawych kursów wyrażeń regularnych (np.: http://grabun.com/wyrazenia-regularne/ ), radzę poczytać.


--------------------
"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.05.2025 - 09:00