Problème regex java [Résolu]

helegile 5 Messages postés jeudi 18 mars 2010Date d'inscription 7 avril 2010 Dernière intervention - 30 mars 2010 à 15:13 - Dernière réponse : helegile 5 Messages postés jeudi 18 mars 2010Date d'inscription 7 avril 2010 Dernière intervention
- 2 avril 2010 à 13:22
Bonjour cela fait plusieurs heures que j'essaye de résoudre ce problème :
Je voudrais dans un string du type :
"blablabla [A_RECUP] reblabla [NEED] bleublabli,..."
récupérer dans un tableau de string "[A_RECUP]", "[NEED]" et tout ce qui se trouve entre crochet...

Pour cela j'utilise la methode split(String, Regex) qui découpe le string par rapport au regex
(ex: split(j'en_ ai_ marre","_") = String[]("j'en"," ai"," marre"))

Donc d'abord j'ai fais un regex qui enlève les mots entre crochet
"\\[[a-z]*\\]"
mais quand je veux inverser donc enlever tout ce qui ne ressemble pas au mot entre crochet "[^\\[[a-z]*\\]]" il m'enlève même les lettres entre les crochet, je me retrouve avec String[]("[" , "]" , "[" , "]")

S'il vous plait aidez moi....
Afficher la suite 

4 réponses

Répondre au sujet
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 31 mars 2010 à 09:03
+3
Utile
Pour récupérer l'entre crochets, il te faut :

\[.*?\]

pour représenter ce qui n'est pas crochets (gaffe, ca supprime les crochets:
(?:^|\]).*?(?:\[|$)

donne le tableau "A_RECUP", "NEED"

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 31 mars 2010 à 10:24
+3
Utile
[^\]]+?(?=\[|$)

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
helegile 5 Messages postés jeudi 18 mars 2010Date d'inscription 7 avril 2010 Dernière intervention - 31 mars 2010 à 09:56
0
Utile
Merci beaucoup pour ce magnifique regex. Par contre y a t-il un moyen de récupérer les crochets ?
sinon ce n'est pas grave je ferais une méthode qui les rajoutes mais je me demande si au moins c'est possible...
Commenter la réponse de helegile
helegile 5 Messages postés jeudi 18 mars 2010Date d'inscription 7 avril 2010 Dernière intervention - 2 avril 2010 à 13:22
0
Utile
merci beaucoup c'est exactement ca
Commenter la réponse de helegile

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.