webForumDet fria alternativet

Matcha e-postadress i JS med samma pattern som används i PHP

8 svar · 526 visningar · startad av Forsberg

ForsbergMedlem sedan juni 200454 inlägg
#1

Hej,

Har ett litet problem som jag nu vänder mig till er för att få löst.

Jag matchar e-postadress med PHP-funktionen preg_match med följande regex pattern:

^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,6}$^

Nu vill jag även använda samma pattern för att matcha med test() i Javascript. Men pattern ovan fungerar ej med test(), utan matchar fel.

Är regex pattern olika mellan JS och PHP? Vad är det isånafall i min pattern ovan som ej fungerar med test() i Javascript?

Tack på förhand!

voigtann1Medlem sedan juni 20019 519 inlägg
#2

Båda ja och nej, men ditt regex uttryck är lite felaktigt:

^[a-z0-9]+([_\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\.[a-z]{2,6}$

och js test:

if (/^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\.[a-z]{2,6}$/i.test(emailString)) {
	// Successful match
} else {
	// Match attempt failed
}
ForsbergMedlem sedan juni 200454 inlägg
#3

Tack för svaret.

Jag fick modifiera uttrycket lite så nu är det detta jag använder:

/^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\.[a-z]{2,6}$/i

Jag matchar det i PHP med preg_match och i Javascript med .test och det fungerar lika i båda.

voigtann1Medlem sedan juni 20019 519 inlägg
#4
...[a-z]{2,6}$^

har jag svårt att se att fungera, då ^ är "Börja med"

ForsbergMedlem sedan juni 200454 inlägg
#5

Yes, men som du ser i min senaste post så har jag reviderat uttrycket så det nu ser ut som sådant i slutet:

...[a-z]{2,6}$/i
voigtann1Medlem sedan juni 20019 519 inlägg
#6

jepp där av min post:

voigtann1 skrev:

if (/^[a-z0-9]+([_.-][a-z0-9]+)*@([a-z0-9]+([.-][a-z0-9]+)*)+\.[a-z]{2,6}$/i.test(emailString)) {
	// Successful match
} else {
	// Match attempt failed
}
ForsbergMedlem sedan juni 200454 inlägg
#7

Hehe japp det kom bara lite i fel ordning verkar det som :P

Tack för din hjälp i detta. Denna tråden kan låsas.

voigtann1Medlem sedan juni 20019 519 inlägg
#8

Vi låser aldrig trådar på wF ;), sätt gärna på den tråd som gav dig svar på din fråga med :)

ForsbergMedlem sedan juni 200454 inlägg
#9

1. Allright :)
2. Done ;)

125 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)