Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[SQL] Regular expressie in UPDATE query met REPLACE

Pagina: 1
Acties:

  • Mexxus
  • Registratie: Januari 2004
  • Laatst online: 20-09 17:01
Moggel,

Ik heb een tabel (wp_posts) in een database staan waarin ik een kolom (wp_content) met grote teksten heb (ongeveer 270). In deze teksten staat hier en daar een link (url) in de vorm van bbcode:

[url=http://ditiseenlink.nl]Dit is de tekst van de link[/url]

Nu wil ik al deze bbcode links om zetten in html links:

<a href="http://ditiseenlink.nl">Dit is de tekst van de link</a>

Ik dacht dit te doen met een UPDATE query en een REPLACE:

code:
1
2
3
UPDATE wp_content 
SET wp_content = 
    REPLACE(wp_content, '[b][[/b]url=http://ditiseenlink.nl]Dit is de tekst van de link[/url[b]][/b]', '<a href="http://ditiseenlink.nl">Dit is de tekst van de link</a>');


Nu is het natuurlijk zo dat elke link weer anders is, en de URL en de tekst in de link natuurlijk ook. Er zitten dus deeltjes in het te vervangen patern welke variabel zijn. Ik dacht dat op te lossen met een regular expressie maar heb geen idee hoe dat uit te voeren.

Hier iemand enig idee?

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Meestal schrijf ik voor dat soort zaken gewoon even snel een scriptje.
Dus gewoon de 270 records ophalen uit de database en de records een voor een update middels reguliere expressie en daarna de updates doorvoeren op de database.

Waarom moet het perse op de database zelf gebeuren?

If it isn't broken, fix it until it is..


  • Mexxus
  • Registratie: Januari 2004
  • Laatst online: 20-09 17:01
Niemand_Anders schreef op vrijdag 28 maart 2008 @ 15:51:
Meestal schrijf ik voor dat soort zaken gewoon even snel een scriptje.
Dus gewoon de 270 records ophalen uit de database en de records een voor een update middels reguliere expressie en daarna de updates doorvoeren op de database.

Waarom moet het perse op de database zelf gebeuren?
Mijn PHP skills zijn dermate zoek geraakt in de diepe krochten van mijn hersens wegens lange tijd vermijden van enig programmeerwerk :P , dat ik dit niet meer 'even snel' doe. MySQL praat ik nog wel aardig, dus ik dacht dit wellicht makkelijker met een query op te lossen...