RegExp: remplacer le groupe matché par sa longueur - Divers - Programmation
Marsh Posté le 08-11-2002 à 14:28:37
et bien en regexp perl je ferais comme ca:
$text = s/(\s{2,})/length $1/esg;
a toi d'adapter à ta syntaxe
indications:
le modifier 'e' permet d'executer la deuxieme partie de la regexp, c'est à dire length $1. il va donc rempalcer les espaces par length de ce qu'il a chopé dans $1
c'est p'tetre specifique à perl, dans ce cas je vois pas comment faire...
le 's' c'est pour ne pas tenir ccompte des sauts de ligne (a toi de voir...)
le 'g' c'est pour le faire pour chaque match trouvé dans le text
Marsh Posté le 08-11-2002 à 15:15:02
ouaip... c'est du intégré au perl...
j'ai fait un truc du style en Java.
je pensais à un "length($1)" mais je l'ai codé pour finir...
ça rajoute une fonction à mon enrichisseur XML
merci
Marsh Posté le 07-11-2002 à 16:59:15
'lut,
je me demande si je ne cherche pas l'impossible mais bon, j'essaie quand même
RegExp: ([ ]{2,})
phrase: "Le petit chaperon rouge"
replacement: "$1"
ça ça revient à ne rien faire... normal $1 correspond aux blancs qui ont été matchés...
je voudrais remplacer ces blancs par leur nombre... à savoir:
--> "Le petit chaperon6rouge"
on peut faire ça en regexp classique ? (sans apport de language externe...)
edit: un titre plus parlant, c'est mieux
Message édité par TBone le 07-11-2002 à 18:13:16
---------------
A straight line is a special case of a curve. It's a curve which is uncurved. -- Susskind.