bonjour a tous,

voila mon probleme : j'ai une chaine bordélique du type :

( TYPE:"{http://www.alfresco.org/model/content/1.0}content" AND ((@\{http\://www.alfresco.org/model/content/1.0\}name:ree* OR @\{http\://www.alfresco.org/model/content/1.0\}name:sdf* OR @\{http\://www.alfresco.org/model/content/1.0\}name:sdf* ) (TEXT:ree* OR TEXT:sdf* OR TEXT:sd1f* ))) OR ( TYPE:"{ http://www.alfresco.org/model/content/1.0}folder" AND (@\{http\://www.alfresco.org/model/content/1.0\}name:ree* OR @\{http\://www.alfresco.org/model/content/1.0\}name:sdf* OR @\{http\://www.alfresco.org/model/content/1.0\}name:sdf* ))

et je voudrais recupérer toutes les chaines qui sont entre TEXT: et *

donc dans mon exemple, je recupérai les chaines sdf sd1f et ree.


je pense qu'il faut que j'utilise split de la classe Pattern, mais je n'arrive pas a trouver la bonne expression reguliére :

voici ce que j'ai fait pour l'instant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Pattern modele = Pattern.compile(".*(TEXT://.*\\*).*");
        String uneChaine = "...";
        String[] valeurs = modele.split(uneChaine);
        for (int i = 0; i < valeurs.length; i++) {
          resultat += valeurs[i] + " ";
          System.out.println( " -> " + valeurs[i]);
        }
merci pour votre aide