Avatar billede diz Nybegynder
20. april 2004 - 17:25 Der er 5 kommentarer og
1 løsning

erstate del af link

Hej alle,

Jeg har følgende problemstilling :

Jeg har et link som "måske" indeholder en parameter kaldet 'cat='.

Nu er det sådan at hvis "cat" eksisterer i linket skal denne fjernes, men resten af linket skal bibeholdes. Følgende virker fint hvis cat står til sidst, men hvis der kommet noget bagved, så fjernes dette :

preg_replace("/cat=./i","",$minstreng)

PS. Det er skrevet i php...

/Sune
Avatar billede roenving Novice
20. april 2004 - 21:19 #1
Idé, for jeg kender ikke phps regExp-behandling godt nok:

preg_replace("/cat=[^\s].*/i","",$minstreng)
Avatar billede diz Nybegynder
21. april 2004 - 10:54 #2
hmmm....det virker delvist..

her virker det :
http://127.0.0.1/index.php?id=38&no_cache=1&&search=true&cat=10 (cat=10 fjernes)


dette virker ikke. Her fjernes både "&cat=10&slam=1" og det er jo meningen at &slam=1 skal blive....

http://127.0.0.1/index.php?id=38&no_cache=1&&search=true&cat=10&slam=1


Anyone?
Avatar billede roenving Novice
21. april 2004 - 14:02 #3
Hvis du selv laver dine links kan du gøre den nemmere at klare ved at sætte &-tegn bagefter:

/&cat=.*&/i
Avatar billede dawin_dk Nybegynder
08. juni 2004 - 23:36 #4
prøv denne:
preg_replace("/cat=[^\&]*/i","",$minstreng)

den burde matche alt der følger efter cat= indtil den enten rammer enden eller en &

(hvis & ikke skal escapes i regexp's så burde preg_replace("/cat=[^&]*/i","",$minstreng) være tilstrækkeligt
Avatar billede diz Nybegynder
03. maj 2005 - 13:35 #5
smider du lige et svar dawin_dk
Avatar billede diz Nybegynder
28. februar 2006 - 15:44 #6
lukker
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
Kurser inden for grundlæggende programmering

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