![]() |
![]() ![]() |
![]() |
![]()
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: 965 Pomógł: 285 Dołączył: 19.06.2015 Skąd: Warszawa 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. |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
A poza tym wzorzec ten i tak jest niepoprawny dla maila zgodnie z RFC.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 240 Pomógł: 278 Dołączył: 11.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ponieważ znacznik ^ to początek a $ to koniec. Czyli do:
Kod /^([0-9]{1})$/ będzie pasować tylko string który zawiera pojedyńczy znak od 0 do 9 np. "1" => 1, "ala ma 5 kota" => NULL Kod /([0-9]{1})/ będzie pasować każdy znak od 0 do 9 w tym stringu np. "1" => 1, "ala ma 5 kota" => 5 |
|
|
![]()
Post
#5
|
|
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 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 17:09 |