/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Mere regex
Fra : AlleyKat


Dato : 13-09-04 04:04

Hej gruppe.

Ja nu har jeg jo set hvor flinke I er til at hjælpe med dissehersens smarte
udtryk, og jeg håber at finde hjælp hér - jeg har læst sidste tråd 3 gange
og tror jeg har fat i det, men det fejler nu alligevel for mig.

Jeg forsøger at gøre et websteds brugernavne kompatible med IRC vha. en
rutine i PHP, men det kniber med at få det sidste til at virke. Følgende
kodestump virker, men mangler det sidste tegn, ] (firkantparantes slut).

$nick_name = preg_replace("[^0-9a-zA-Z_`\^\{\[\|\}\e\-\]]", "_", $username);
if ( preg_replace("[0-9\-]", "~", $nick_name{0})=="~" )
$nick_name = "^" . $nick_name;

Det kan sikkert gøres i én omgang, men man må tage det skridt for skridt når
man ikke liiige er parat til at gi' et par hundrede for en ordentlig manual
i det.

Oversat til dansk prøver jeg at sikre at: brugernavnet kun indeholder
'IRC-lovlige' tegn, a-z, A-Z, 0-9, underscore, `, ^, tuborg- og
firkantparenteser, escape, pipe og bindestreg. I den anden halvdel prøver
jeg at sikre en anden IRC-regel, nemlig at navnet ikke må have 0-9 eller
bindestreg som 1ste tegn.

Jeg ville være meget taknemmelig for forslag til hvordan dette kunne gøres
bedre. Som det primære, det manglende tegn, men også gerne hele
'konverteringen' - den er ikke særligt elegant. På forhånd tak,

AlleyKat



 
 
Søg
Reklame
Statistik
Spørgsmål : 177553
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste