Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 23.01.2016 Ostrzeżenie: (0%)
|
Witam forumowiczów! Testuje pisanie wyrażeń regularnych i pewnej rzeczy nie potrafię zrozumieć.
Zwraca 1 - ok, jasne, ale:
nie zwraca nic, natomiast jak usunę ^ i $, to prawidłowo dostaje wszystkie adresy. Dlaczego? Sprawdzałem na kilku stronach i zawsze ze znacznikami początku i końca nie dostaje nic. |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 23.01.2016 Ostrzeżenie: (0%)
|
A sprawdzałeś po co właściwie są ^ i $? To początek i koniec stringu. Czyli Twoje wyrażenie sprawdza czy podana linia jest w CAŁOŚCI adresem email. Tak, sprawdzałem, ale z tłumaczeń zawsze wnioskowałem, że to ma być początek i koniec zdefiniowanego stringu, tzn: "To mój adres e-mail: adres@domena.pl", to myślałem, że: Cytat To jest mój adres e-mail: ^adres@domena.pl$ a nie: Cytat ^To jest mój adres e-mail: adres@domena.pl$ i stąd moje pytanie. Czyli wnioskowałem, że skrypt przeszukuje znak po znaku i szuka fragmentu zgodnego ze wzorcem. A poza tym wzorzec ten i tak jest niepoprawny dla maila zgodnie z RFC. Domyślam się, po prostu kombinowałem na wszelkie sposoby aby znaleźć rozwiązanie. Dziękuje. Ten post edytował Grandalf00 23.01.2016, 15:23:19 |
|
|
|
Grandalf00 [PHP]preg_match: email ze zmiennej weryfikuje dobrze - ze strony www nie 23.01.2016, 15:06:55
kapslokk A sprawdzałeś po co właściwie są ^ i $? To po... 23.01.2016, 15:12:40
viking A poza tym wzorzec ten i tak jest niepoprawny dla ... 23.01.2016, 15:14:09
markuz Ponieważ znacznik ^ to początek a $ to koniec... 23.01.2016, 15:15:16 ![]() ![]() |
|
Aktualny czas: 28.12.2025 - 17:54 |