Avatar billede dustie Mester
01. december 2005 - 02:39 Der er 13 kommentarer og
2 løsninger

reg.exp: find $var og highlight

Hej.

Jeg forsøger at lave noget kode der kan finde og highlighte variabler i php når de vises i html.

Altså så fx $foo ændres til <span class="var">$foo</span> og $foo.$bar ændres til <span class="var">$foo</span>.<span class="var">$bar</span> osv.

Jeg er godt klar over hvordan det cirka skal laves, men jeg må indrømme jeg ikke er så god til regulære udtryk.

Er der en venlig sjæl der kan fikse det for mig?
Avatar billede jakobdo Ekspert
01. december 2005 - 08:18 #1
Måske noget i denne stil:
$nytekst = preg_replace('/(\\$[a-z]+)/', '<span class="var">$1/span>', $tekst);
Avatar billede jakobdo Ekspert
01. december 2005 - 08:19 #2
Dog vil den regexp kun virke på variabler med små bogstaver.
Den kan udbygges så den også tager store bogstaver, tal, _ og -.
Avatar billede dustie Mester
01. december 2005 - 08:27 #3
Udbygget vil det der være noget i stil med:
preg_replace('/(\\$[a-zA-Z0-9_]+)/' ...

eller er jeg helt galt på den?
Avatar billede jakobdo Ekspert
01. december 2005 - 09:02 #4
Det ser rigtigt ud!
Avatar billede Slettet bruger
01. december 2005 - 09:04 #5
Nok nærmere:

preg_replace('/(\\$[a-zA-Z_][a-zA-Z0-9_]*)/' ...

Variabelnavne må ikke begynde med et tal
Avatar billede dustie Mester
01. december 2005 - 09:46 #6
Det har du helt ret i sandbox. Det havde jeg ikke lige tænkt på.
Avatar billede dustie Mester
01. december 2005 - 09:48 #7
Må de godt starte med en underscore?
Avatar billede jakobdo Ekspert
01. december 2005 - 09:49 #8
Avatar billede dustie Mester
01. december 2005 - 09:55 #9
okay. Det virker rodet, men må nok heller tillade det for en sikkerheds skyld.
Jeg må snart se og få øvet mig på reg exp.
Avatar billede jakobdo Ekspert
01. december 2005 - 09:58 #10
Avatar billede dustie Mester
01. december 2005 - 11:05 #11
Mon der er en eller to her der kunne tænke sig lidt points? :)
Avatar billede jakobdo Ekspert
01. december 2005 - 11:15 #12
Svar!
Avatar billede Slettet bruger
01. december 2005 - 11:17 #13
Her synes jeg til gengæld, at jeg har lavet en smule.
Avatar billede dustie Mester
01. december 2005 - 11:37 #14
Tak for hjælpen :)
Avatar billede jakobdo Ekspert
01. december 2005 - 11:38 #15
Takker for point!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester