[PHP] Regular match op alles behalve een bepaalde string

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • chielsen
  • Registratie: Oktober 2003
  • Laatst online: 20-09 01:17
Ik ben nu al 2 uur bezig met uitzoeken hoe ik dit oplos.
Ik wil alles replacen wat niet een bepaalde string is.

Dit heb ik al geprobeerd

PHP:
1
2
$ja = preg_replace("/([^\|][^\|]+[^\|])/", '', "Het veld |user| moet worden ingevuld.");
$ja = preg_replace("/(^(\|\w+\|))/", '', "Het veld |user| moet worden ingevuld.");


Er zou 'user' uit moeten komen. Ik kan er dus niet uitkomen hoe je een groep inverteert.
Je kan wel een verzameling inverteren maar niet een groep...
De reden wrom ik niet met match werk is omdat ik het eigenlijk in js wil maken en daar zo moet werken...

Deze ahd ik ook nog maar geeft me:
Warning: Compilation failed: lookbehind assertion is not fixed length at offset 11

PHP:
1
$ja = preg_replace("/(?<!\|(\w+))\w(?!(\w+)\|/", '', "Het veld |user| moet worden ingevuld.");

[ Voor 40% gewijzigd door chielsen op 08-10-2005 03:54 ]


Acties:
  • 0 Henk 'm!

  • disjfa
  • Registratie: April 2001
  • Laatst online: 03-07 14:47

disjfa

be

In js heb je evenhard een match of een regexp dus ik zie het probleem niet. En user zit erin als "/user/". In bijde php en js.

[ Voor 6% gewijzigd door disjfa op 08-10-2005 03:49 ]

disjfa - disj·fa (meneer)
disjfa.nl


Acties:
  • 0 Henk 'm!

  • chielsen
  • Registratie: Oktober 2003
  • Laatst online: 20-09 01:17
Ja maar de math in js geeft alleen de positie van het begin van de string om. Dan moet je nog maar kijken waar die eindigt..

Acties:
  • 0 Henk 'm!

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 21:18

crisp

Devver

Pixelated

in js:
JavaScript:
1
2
3
var s = 'Het veld |user| moet worden ingevuld.';
var t = s.match(/\|(.*)\|/);
alert(t[1]);

Intentionally left blank


Acties:
  • 0 Henk 'm!

  • chielsen
  • Registratie: Oktober 2003
  • Laatst online: 20-09 01:17
Ow ja. Dank je, ik zat met search te klooien.
Maar toch zou ik nog wel eens weten hoe je alles behalve een bepaalde string kan matchen..