login  Naam:   Wachtwoord: 
Registreer je!
 Forum

preg_replace()

Offline Fenrir - 20/01/2005 21:32
Avatar van FenrirPHP expert Hoe replace ik een string in []?
vb: preg_replace('/[a-z]/', '\[\]', $str);
dit werkt niet, want php ziet [] als tekens voor preg_replace.
Hoe kan ik ze toch vervangen?

4 antwoorden

Gesponsorde links
Offline Thomas - 20/01/2005 22:33
Avatar van Thomas Moderator Escape karakters die in een regexp een speciale betekenis hebben.
[a-z] is overigens de klasse karakters a t/m z. Deze matched welgeteld één karakter.

Je patroon zou er ongeveer zo uit moeten zien (welke karakters kunnen er voorkomen tussen die [] ?):

"/\[(\w)*\]/"

Dit patroon matched 0 of meer alfanumerieke karakters of een underscore die tussen [] staan.
Offline remy - 21/01/2005 15:26
Avatar van remy PHP ver gevorderde moet dat perse met preg_replace?
Offline Thomas - 21/01/2005 16:30
Avatar van Thomas Moderator Als de string er elke keer anders uit ziet wel, dan is het echt een patroon.
Maar zolang Fenrir niet aan kan geven hoe dat ding er uit kan zien, is het nogal moeilijk een regexp maken...
Offline Fenrir - 21/01/2005 17:30
Avatar van Fenrir PHP expert Ik heb het probleem al opgelost:
Het probleem zat hem niet in de regex, maar in de verdere code.
Daar zat een bug in, waardoor alle [ en ] verwijderd werden.

Toch bedankt!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.177s