![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 3 Dołączył: 22.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Potrzebuję sprawdzić czy użytkownik wprowadził prawidłowe imię i nazwisko tzn
1) musi być CO NAJMNIEJ 2 członowe 2) pierwsze imie MUSI zaczynac się z dużej litery, nazwisko niekoniecznie 3) w nazwisku dozwolone są myślniki, np. Boy-Żeleński 4) nazwiska mogą być 2 członowe, imion może być więcej dla przykładu, coś takiego jest poprawne: Anna Magdalena mcPherson-Stefańska Stworzyłem takie wyrażenie regularne i wydaje mi się, że powinno być ok. Ale czy jest?
Jeśli coś pokićkałem to mnie poprawcie. Ten post edytował Aztech 23.11.2005, 22:01:59 |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Opiekunowie Postów: 3 855 Pomógł: 317 Dołączył: 4.01.2005 Skąd: że ![]() |
Znam babsztyla z nazwiskiem Kowacka Bo-Jin (zmiksowała się z jakimś żółtym), więc będzie miała kłopot z Twoim formularzem
![]() -------------------- Jak poprawnie zadać pytanie | Jak poprawnie zatytułować wątek
Najczęstsze błędy | Błędy E_NOTICE | PHP FAQ | FAQ PHPedia | SQL-Injection | Logowanie i sesje | Hashowanie haseł | Server - od czego zacząć ? | Manual PHP Alternatywne Forum dla Ekspertów Nie pomagam na PW, nie mam GG |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 3 Dołączył: 22.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 23.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Jesli piszesz regexa, wpierw postaraj sie wydzielic w nim pewne elementy.
Widze u ciebie imie i nazwisko. Napiszmy wiec wedle twoich kryteriow regexa sprawdzajace imie. /[A-Z][a-zA-Z]*/ Tu chyba nie ma co tlumaczyc? 1 litera duza, kolejne male lub duzo w dowolnej ilosci (takze 0). Teraz nazwisko. /[a-zA-Z]+(\\*s-\\s*[a-zA-Z]+)?/ Pierwszy czlon to ciag malych lub duzych liter i opcjonalny czlon z 2 nazwiskiem po pauzie (\\s* zjadaja dowolna ilosc bialych znakow po obu stronach - oraz pomiedzy imieniem a nazwiskiem). W sumie wychodzi regex:
Aaa wlasnie doczytalem ze imion moze byc wiecej.
EDIT: do kazdego z tych wyrazen trzeba dodac na poczatku ^ a na koncu $, bo sprawdzamy czy caly tekst pasuje do wyrazenia a nie jego czesc. Ten post edytował Radarek 9.12.2005, 00:33:20 |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 9.12.2005 Ostrzeżenie: (0%) ![]() ![]() |
Mała podpowiedź: w nazwisku mogą się znaleźć znaki '
"O'Reilly" to podręcznikowy przykład. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 188 Pomógł: 0 Dołączył: 23.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(marcman @ 2005-12-09 10:48:48) Mała podpowiedź: w nazwisku mogą się znaleźć znaki ' "O'Reilly" to podręcznikowy przykład. No ok. Ja napisalem takie wyrazenie jakie chcial autor. Jesli uzna ze nazwisko to zbior takich a nie innych znakow to sobie zmieni odpowiednio wyrazenie. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 3 Dołączył: 22.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Co dziwne... działa
![]() |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 607 Pomógł: 23 Dołączył: 8.09.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Przydała by się też możliwość używania polskich znaków, tj. ó, ą, ź itd.
-------------------- Audio: Metallica, Soil, RHCP, OffSpring, Green Day, "Retro", Gorillaz, Disturbed, Coma
DB: MySQL 4.1 | php: 4.4.3 Pomogłem Ci? Wciśnij przycisk POMÓGŁ. |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 276 Pomógł: 3 Dołączył: 22.10.2003 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
To nie problem, wystarczy je dopisać zaraz za wyrażeniami [a-z][A-Z] a tutaj tylko by zaciemniały ideę
![]() |
|
|
![]() ![]() |
![]() |
Aktualny czas: 19.08.2025 - 15:38 |