webForumDet fria alternativet

Felaktiga tecken

5 svar · 167 visningar · startad av Fuel

FuelMedlem sedan okt. 20001 285 inlägg
#1

Varför funkar inte detta,
eregi("[^a-zA-Z0-9_-]",$user);

det blir tvärt om, måste ha t.ex ett @ i user för att det ska accepteras

------------------
" The code is out there "

KimMedlem sedan jan. 20007 697 inlägg
#2

Vill du kräva ett @ i användarnamnet eller? Jag förstod inte riktigt.

visslarenMedlem sedan juli 20011 222 inlägg
#3

har bara gjort sånt där i javascript, men vad jag vet så betyder ^ not. prova att ta bort det tecknet så kan det nog fungera.

------------------
*GaBlimp*
www.spelbasen.net

vissler/yobiko

FlashXMedlem sedan nov. 19991 033 inlägg
#4

Har för mig att ^ matchar början av strängen och $ slutet. ^ borde kanske stå till vänster om [ ifall den funktionen ska användas.
ereg("^[a-zA-Z0-9_-]",$user); kommer att matcha en sträng som börjar med något av tecknen innanför hakparanteserna.
Om ^ står innanför hakarna, så matchar man inte tecknen i hakparantesen och därför funkar nog inte din variant,

[r]
Om du hade tänkt att ^ ska finnas med i strängen, så måste du nog sätta en \ framför eftersom den har en speciell innebörd.

[Redigerat av FlashX den 29 jan 2002]

FuelMedlem sedan okt. 20001 285 inlägg
#5

Tack för hjälpen.. det går nu att skriva "som vanligt", flyttade ut hak tecknet utanför klamrana, men det godkänns både med eller utan @ etc.

------------------
" The code is out there "

FlashXMedlem sedan nov. 19991 033 inlägg
#6

Som vi sa så matchas alla strängar som inleds med något av tecknen mellan hakparanteserna, om ^ finns till vänster om [
Är ^ till höger vill man inte att strängen ska matcha något av tecknen innanför parantesen.

Har inte riktigt uppfattat om du vill att @ ska vara med i $user eller inte?

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