Récupérer une certaine partie d'un String

Résolu
marcanto_5
Messages postés
47
Date d'inscription
jeudi 26 février 2004
Statut
Membre
Dernière intervention
22 avril 2010
- 22 avril 2010 à 20:14
MTP85
Messages postés
12
Date d'inscription
mardi 18 mars 2008
Statut
Membre
Dernière intervention
6 juin 2010
- 1 juin 2010 à 14:39
Bonjour,

Ayant un String " Blabla", j'aimerais récupérer la partie entre les balises : Blabla.

J'avais pensé à transformer le String en tableau de caractères et faire un système de boucle avec une comparaison caractère par caractère mais ça me semble un peu lourd...
J'ai également regardé au StringTokenizer mais je n'ai pas réussi à l'appliquer à mon cas.

C'est pour cela que je vous demande s'il n'existe pas une méthode plus facile et probablement plus rapide en termes de calculs.

Merci pour vos réponses ;)

6 réponses

marcanto_5
Messages postés
47
Date d'inscription
jeudi 26 février 2004
Statut
Membre
Dernière intervention
22 avril 2010

22 avril 2010 à 21:17
Merci beaucoup !
Le code fonctionne très bien (il faut juste écrire substring en minuscules) et est beaucoup plus performant que ce que j'avais commencé à faire !
0
MTP85
Messages postés
12
Date d'inscription
mardi 18 mars 2008
Statut
Membre
Dernière intervention
6 juin 2010

1 juin 2010 à 04:28
ET si je veux récuperer une chaine de caractere, mais dans un code HTML que j'ai reussis à extraire dans un fichier, comment je fais ??
0
Utilisateur anonyme
1 juin 2010 à 08:59
Salut,

@ MTP85:
C'est le même principe, mais pour t'en dire plus, il faudrait que tu nous montres ce code HTML et que tu nous dises ce que tu veux extraire de ce code.

Cordialement,


\ Dan /...
0
MTP85
Messages postés
12
Date d'inscription
mardi 18 mars 2008
Statut
Membre
Dernière intervention
6 juin 2010

1 juin 2010 à 14:36

















----

, F@ST™












----

Hardware Version:,
252677356.,

----

Software Version:,
3.13.6Sla_en,


var VdslIncluded = '';
if ( VdslIncluded != 0 ) {
document.write(\" ----
\");
document.write(\" VDSL Software Version:, \");
document.write(\" , \");
document.write(\" \");
}





This information reflects the current status of your DSL connection.




var VdslIncluded = '';
if ( VdslIncluded == 0 ) {
document.write(\"----
\");
document.write(\"Line Rate - Upstream (Kbps):, \");
document.write(\"508, \");
document.write(\"\" );
document.write(\"----
\");
document.write(\"Line Rate - Downstream (Kbps):, \");
document.write(\"1021, \");
document.write(\"\");
}
else {
document.write(\"----
\");
document.write(\"B0 Traffic Type:, \");
document.write(\", \");
document.write(\"\");
document.write(\"----
\");
document.write(\"B0 Line Rate - Upstream (Kbps):, \");
document.write(\"508, \");
document.write(\"\");
document.write(\"----
\");
document.write(\"B0 Line Rate - Downstream (Kbps):, \");
document.write(\"1021, \");
document.write(\"\");
document.write(\"----
\");
document.write(\"B1 Traffic Type:, \");
document.write(\", \");
document.write(\"\");
document.write(\"----
\");
document.write(\"B1 Line Rate - Upstream (Kbps):, \");
document.write(\"508, \");
document.write(\"\");
document.write(\"----
\");
document.write(\"B1 Line Rate - Downstream (Kbps):, \");
document.write(\"1021, \");
document.write(\" \");
}

----

LAN IP Address:,
192.168.1.1,

----

WAN IP Address:,





----

Default Gateway:,





----

Primary DNS Server:,
193.95.75.10,

----

Secondary DNS Server:,

193.95.75.13,










0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MTP85
Messages postés
12
Date d'inscription
mardi 18 mars 2008
Statut
Membre
Dernière intervention
6 juin 2010

1 juin 2010 à 14:39
Je voudrais par exemple extraire la version du soft, la WAN Adresse, LAN adresse, Upstream et le Downstream.
0
cs_DARKSIDIOUS
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
131
22 avril 2010 à 20:35
Salut,

Fait un indexOf(">") pour récupérer le premier caractère à récupérer, puis un indexOf("<") pour récupérer le dernier, et enfin un substring pour récupérer la chaîne finale.

Ce qui doit donner au final (à corriger si erreur) :
String lien = "Blabla";
int debut = lien.indexOf(">");
int fin = lien.indexOf("<", debut);
String texte = lien.subString(debut + 1, fin);

______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
-2