/ 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
Hjælp til regullære udtryk (ikke helt newb~
Fra : Mogens Meier Christe~


Dato : 31-10-01 21:55

Hej gruppe!

Hvorfor virker

Jeg er ved at erstatte smileys med billeder på vores wall (på
http://dsl.justask.dk)

Følgende virker:

Erstat :-|, :-\ etc. hhv. etc.
$text = ereg_replace("(;|:|=)-?(\\\\|\\|)", ...
$text = ereg_replace("(:|;|=)-?O", ...

Men vil jeg indføre :-/ i den første og :-0 (NB: det er et nul) i den
næste således
$text = ereg_replace("(;|:|=)-?(\\\\|\\|/)", ...
$text = ereg_replace("(:|;|=)-?(O|0)", ...

- så "crasher" outputtet totalt - det virker som om ereg-funktionen
laver vilkårligt output!

I starten troede jeg det skyldtes det at '0' og '/' ikke er gyldige som
almindelige tegn, så jeg erstattede dem med '\\0' og '\\/' men det hjalp
ikke noget!

På forhånd tak for hjælp med denne absolut essentielle anvendelse af
RegEx :))

--
Mvh. Mogens
www.momech.dk


 
 
Kim Emax - ayianapa.~ (31-10-2001)
Kommentar
Fra : Kim Emax - ayianapa.~


Dato : 31-10-01 23:49


"Mogens Meier Christensen" <mmc@nospam.dk> skrev

> Men vil jeg indføre :-/ i den første og :-0 (NB: det er et nul) i den
> næste således
> $text = ereg_replace("(;|:|=)-?(\\\\|\\|/)", ...
> $text = ereg_replace("(:|;|=)-?(O|0)", ...

hvorfor "\\\\"? hvad prøver du at matche?

Jeg har ikke de store problemer med at matche div. smileys:

#$text = ";-0";
$text = ";-O";

$text = ereg_replace("(:|;|=)-?O","smiley2", $text);
$text = ereg_replace("(;|:|=)-?(0|O)", "smiley1", $text);
print "<P>$text";

prøv at smide alle de smileys du vil matche i et array og løb det igennem,
mens du printer $text ud, når alle RegEx er udført, ellers er du velkommen
til at spørge igen... evt. via ICQ

--
Take Care
Kim Emax
http://www.emax.dk
http://www.ayianapa.dk
http://www.artificial-dreams.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks mest avancerede VinWebShop



Mogens Meier Christe~ (01-11-2001)
Kommentar
Fra : Mogens Meier Christe~


Dato : 01-11-01 04:05

"Kim Emax - ayianapa.dk" <newsgroup@sletdette-ayianapa.dk> wrote

> > $text = ereg_replace("(;|:|=)-?(\\\\|\\|/)", ...
> > $text = ereg_replace("(:|;|=)-?(O|0)", ...

> hvorfor "\\\\"? hvad prøver du at matche?

- en vred smiley (med backslah): ;-\
;)

> Jeg har ikke de store problemer med at matche div. smileys:

Det vidste sig (selvf.) at være mig der ikke kunne overskue hvad der
foregik "behind the scenes":
:/ i http:// blev opfattet som en sur smiley...

Mht. =0 (smiley'en bestående af "lig med nul") *kunne* det jo være ting
såsom border=0 der var problemet... HOST HOST! ;)

Jeg havde ikke tænkt så langt - der var jo ikke noget HTML før jeg
begyndte selv at sætte det ind... ;))

Mvh. Mogens
www.momech.dk



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

Månedens bedste
Årets bedste
Sidste års bedste