IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Collection et Stream Java Discussion :

Regex et JTable


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2004
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 63
    Par défaut Rege
    Sqs

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 73
    Par défaut
    Bonjour,

    Ce que tu veux, c'est récupérer pour chaque TR le contenu des TD associés dans le but de les injecter dans un JTable ou comment faire pour ajouter des lignes / colonnes dans un JTable?

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    73
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2008
    Messages : 73
    Par défaut
    Re, après une petite tartiflette, ca va toujours mieux

    Et bien, si c'est juste la construction du JTable, comme je te le disais, c'est assez simple, un tableau de String pour les entêtes des colonnes, un tableau a deux dimensions qui va contenir les lignes / colonnes

    Voila un petit exemple sur une table toute simple avec 2 colonnes / 2 Lignes (le code html est en dur dans le source)
    C'est juste pour donner une idée, faut le repenser pour que ce soit propre aux niveaux de l'utilisation des groupes de regexp etc
    Il faudra aussi gérer le fait qu'on peut avoir des balises comme <b>, <i>, etc dans le contenu du td (pour ce qui est du colspan, tu peux laisser tomber, vu qu'il faut le même nombre de colonnes dans le contexte de ton exercice)

    Ps : Syntaxe java 1.4, si tu bosses en 1.5 et +, faut penser à typer les Listes etc

    Mais dans l'ensemble, ton code devra ressembler à ça.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    String htmlContent = "<table><tr><td>1.1</td><td>1.2</td></tr><tr><td>2.1</td><td>2.2</td></tr></table>";
            try {
                String TR_PATTERN = "<tr[^>]*>(.*?)</tr>";
                String TD_PATTERN = "<td[^>]*>(.*?)</td>";
     
                Pattern pTR = Pattern.compile(TR_PATTERN);
                Pattern pTD = Pattern.compile(TD_PATTERN);
                Matcher mTR = pTR.matcher(htmlContent);
                Matcher mTD    = null;
                List trs = new ArrayList();
                while (mTR.find()) {
                    String currentTR = htmlContent.substring(mTR.start(), mTR.end());
                    mTD = pTD.matcher(currentTR);
                    List tds = new ArrayList();
                    while (mTD.find()) {
                        tds.add(mTD.group(1));
                    }
                    trs.add(tds.toArray(new String[0]));
                }
                String[] headers = {"titreCol1","titreCol2"};
                String [][] content = new String[trs.size()][];
                for (int i=0;i<trs.size();i++) {
                    content[i] = (String[])trs.get(i);
                }
                JTable jt = new JTable(content,headers);
            }
            catch (PatternSyntaxException pse){
                pse.printStackTrace();
            }
    Bon courage et si tu as besoin, hésites pas à me contacter par MP / via ce post

    EDIT : Owned à 2 minutes par Herch ^^

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Swing]JTable- Dimensionner les colonnes
    Par loutfi dans le forum Composants
    Réponses: 12
    Dernier message: 01/07/2011, 08h50
  2. Cherche regex...
    Par laurent_h dans le forum C
    Réponses: 4
    Dernier message: 31/03/2003, 11h24
  3. [SWING]jTable + Focus
    Par chady dans le forum Composants
    Réponses: 5
    Dernier message: 27/02/2003, 14h51
  4. JBuilder7 & JTable Colonne alignement
    Par Tonton Luc dans le forum JBuilder
    Réponses: 5
    Dernier message: 06/11/2002, 17h32
  5. Réponses: 9
    Dernier message: 12/08/2002, 07h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo