Avatar billede alsvik Nybegynder
29. september 2008 - 16:15 Der er 4 kommentarer og
1 løsning

PHP replace string

Moddi100 har lavet følgende kode til en Flash app som henter strenge fra en database:
(dette er kun en del af den samlede kode)

print '' . preg_replace("#^.*<img[^>]+src=(['\"])(.+?)\\1.*$#is", "<img src='$2'>", $name) . '';

Koden virker efter hensigten og svarede fuldt ud til det jeg efterlyste - nu er det dog gået op for mig at jeg ønsker yderligere en ting fjernet fra den streng som hentes:

Den oprindelige streng ser (f.eks.) således ud:
Google opdatering ... <img src="domæne.dk/content/google.png align="right">

Med Moddi100's kode ser strengen som sendes til flash således ud:
<img src="domæne.dk/content/google.png" align="right">


Mit spørgsmål er nu: Hvordan får jeg fjernet ' align=right' fra strengen? Det eneste jeg ønsker tilbage er det 'nøgne' img-tag:

<img src="domæne.dk/content/google.png">
Avatar billede moddi100 Seniormester
29. september 2008 - 16:27 #1
Det virker som det skal. Det er til gengæld dit input som er forkert.

I tekststregen:
Google opdatering ... <img src="domæne.dk/content/google.png align="right">

Mangler der et " efter stien. Det er det der fejler.
Avatar billede moddi100 Seniormester
29. september 2008 - 16:31 #2
Men hvis du ændre den fra:

preg_replace("#^.*<img[^>]+src=(['\"])(.+?)\\1.*$#is", "<img src='$2'>", $name)

til

preg_replace("#^.*<img[^>]+src=(['\"])(.+?)[\\1 ].*$#is", "<img src='$2'>", $name)

tager den også højde for mellemrum efter stien. Synes dog du bør beholde den som den er. Men det er op til dig.
Avatar billede alsvik Nybegynder
29. september 2008 - 16:32 #3
ja - selvfølgelig :oD
Avatar billede alsvik Nybegynder
29. september 2008 - 16:33 #4
Stik mig lige et svar - så jeg kan lukke!
Avatar billede moddi100 Seniormester
29. september 2008 - 16:35 #5
Tag du dem bare selv, du har jo lige givet mig point for det samme før...
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