Avatar billede phppoul Nybegynder
31. oktober 2001 - 10:32 Der er 23 kommentarer og
1 løsning

replace

Hej
Jeg har et problem, jeg har et tekstdokument hvor en del af teksten skal erstattes, jeg ved bare ikke hvordan jeg får fat på lige det som skal erstattes.
Eksembel på teksten:
B 1986, Plakat, Illusionist, b1986.tif,
BB 1987, Plakat, Illusionist, bb1987.tif,
B 19868, Plakat, Illusionist, b19868.tif,

Jeg vil ha´ erstattet feks \"b1986.tif\" med <a href=\"http://www.blabla.com/b1986.jpg\">Link</a>
så alle billederne bliver til links, og at .tif bliver til .jpg
Jeg håber at jeg har gjort mit problem forståeligt
Ellers spørg til det uforståelige.
På forhånd tak
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 10:39 #1
Sådan:

<?php
    $t = \"B 1986, Plakat, Illusionist, b1986.tif, BB 1987, Plakat, Illusionist, bb1987.tif, B 19868, Plakat, Illusionist, b19868.tif,\";
    $t = eregi_replace(\"([b]+[0-9]+).tif\", \"<a href=\\\"http://www.noget.com/\\\\1.jpg\\\">\\\\1</a>\", $t);

    echo $t;
?>
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 10:41 #2
Hovsa .. lagde ikke lige mærke til de mange point ... giv mig 30 og tag selv 70 ..
Avatar billede phppoul Nybegynder
31. oktober 2001 - 10:44 #3
Jeg glemte at sige at \"b1986.tif\" kan variere,
det kan også hedde \"A22344.tif\".
Det eneste man kan være sikker på er et mellemrum mellem beskrivelsen og \"billedet\"
        (Illusionist, A22344.tif)
Hvis det går hen og bliver kompliceret, forhøjer jeg gerne pointene.
Avatar billede fri-hash Nybegynder
31. oktober 2001 - 10:46 #4
kan php lave et tif om til jpg ??
Avatar billede phppoul Nybegynder
31. oktober 2001 - 10:47 #5
Det er ikke billedet som skal ændres, men referencen til billedet.
Avatar billede gonzospunk Nybegynder
31. oktober 2001 - 10:49 #6
Jeg ville gætte på at du kan bruge str_replac() funktionen.

Eks.
str_replace ($din_streng, \".jpg\", \".tif\");

Den ville ændre din filtype. For at erstatte URL\'en kan du evt. se på ereg_replace() og preg_replace().
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 10:55 #7
<?php
    $t = \"B 1986, Plakat, Illusionist, b1986.tif, BB 1987, Plakat, Illusionist, bb1987.tif, B 19868, Plakat, Illusionist, b19868.tif,\";
    $t = eregi_replace(\", ([a-z0-9]+).tif\", \", <a href=\\\"http://www.noget.com/\\\\1.jpg\\\">\\\\1</a>\", $t);

    echo $t;
?>
Avatar billede phppoul Nybegynder
31. oktober 2001 - 10:56 #8
Problemet er at jeg ikke ved hvad billederne hedder eller hvor langt navnet er
De kan hedde W53453453443534535.tif eller R3.tif
Jeg skal ha´ lavet er script som kan erstatte billednavnet med et link til billedet som bare er lavet om til et .jpg
Det eneste man ved med sikkerhed, er at der er mellemrum op til billednavnet.
Det er billeder og tekstdokumenter der er brugt i en gammel DB som nu skal på nettet.
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 10:58 #9
Det jeg lige kom med tager alt fra \", \" og til .tif
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 11:00 #10
\"Det eneste man ved med sikkerhed, er at der er mellemrum op til billednavnet\"

hmm .. dvs. man kan ikke være sikker på at der er et komma før mellemrummet ?
Avatar billede phppoul Nybegynder
31. oktober 2001 - 11:01 #11
jo, kommaet er der også
\", navn.tif\"
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 11:02 #12
phppoul, så virker mit seneste foreslag perfekt :-) Har selv afprøvet det ..
Avatar billede phppoul Nybegynder
31. oktober 2001 - 11:06 #13
>>tdaugaard 
Den \'a href\' som er erstatningen skal linke til det billede som den erstatter.
<a href=\"http://www.noget.com/b19868.tif\">Link</a>
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 11:08 #14
Skal den ikke linke til .jpg ?
Avatar billede gonzospunk Nybegynder
31. oktober 2001 - 11:08 #15
Kan du så ikke bare skrive:
ereg_replace(\", ().tif\", \", <a href=\\\"http://www.noget.com/\\\\1.jpg\\\">\\\\1</a>\", $din_streng)
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 11:09 #16
Men prøv at tage en view source .. den linker til det .. men jeg skriver bare \\\\1 (som bliver erstattet med f.eks. \"b19868\") som link tekst istedet for Link
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 11:10 #17
gonzoozpunk, det virker ikke .. og btw, hvorfor svarer du med en modificeret version af min ??
Avatar billede phppoul Nybegynder
31. oktober 2001 - 11:15 #18
1000 tak tdaugaard
Du er sq altid til at regne med ;)
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 11:19 #19
phppoul *S* det var så lidt da :o)
Avatar billede gonzospunk Nybegynder
31. oktober 2001 - 12:33 #20
>>tdaugaad:
Okay det var måske ikke særlig venligt, men min idé var, at hvis man fjernede dit sortering i () så ville den tage alle .tif filer!
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 12:35 #21
sortering ? Det er en regular expression .. nærmere betegnet et character set. fra a-z og 0-9, + betyder at der må være flere.
Avatar billede gonzospunk Nybegynder
31. oktober 2001 - 12:44 #22
Aaaah der var jeg lige lidt for hurtig så. Beklager. :(
Avatar billede tdaugaard Nybegynder
31. oktober 2001 - 13:05 #23
*s* det går nok ;-)
Avatar billede gonzospunk Nybegynder
31. oktober 2001 - 13:07 #24
:)
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