begin process at 2012 02 13 23:02:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Algorithme

 > 

Divers

 > 

decoupage chaine de caractère


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

decoupage chaine de caractère

vendredi 16 mai 2008 à 15:41:55 | decoupage chaine de caractère

bobby3

Bonjour à tous
Voila dans le cadre d'un application sous vb 2005 il faut que j'extraie certaine donné d'un fichier xml
Pour ca pas de probleme mais les données récupéré sous sous la forme <menu>Production</menu> ou    <sousmenu>Menuiseries1</sousmenu>.J'aurai pu récupérér directement ce qu'il y a à l'intérieur des balises mais  Je suis obligé de les récuperer comme ca car il faut que je les trie ( mettre celle avec les balises <menu> dans un tableau de chaine appelé menu et celle avec les balises <sousmenu> dans un autre tableau, j'utilise Left pour savoir lesquels vont dans tel  ou teltableau)). Le probleme est que un coup que mes données sont récupérés, triés et tout ca, j'aurai besoin  d'avoir accès à ce qu'il y a à l'intérieur des balises, et j'ai pas trouvé de fonction, meme sur msdn, qui me fasse en sorte que je puisse récupérer las sous chaine comprise entre le 7ème caractère et le 7ème caractère à partir de la fin.
Si vous avez une fonction ou une technique pour pallier à ce probleme, vos reponses sont les bienvenus
Merci d'avance
vendredi 16 mai 2008 à 15:48:50 | Re : decoupage chaine de caractère

casy

Membre Club
Et SubString ne sait pas faire ça ??????

---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]
vendredi 16 mai 2008 à 15:49:51 | Re : decoupage chaine de caractère

Renfield

Administrateur CodeS-SourceS
joues avec les objets qui tournent autour de l'XML
vendredi 16 mai 2008 à 16:16:53 | Re : decoupage chaine de caractère

bobby3

merci pour vos réponses
casy non substring ne sait pas faire ca en tout cas pas en visual basic (en php on peut je croit), en vb substring a 2 paramêtre, la position de départ et et le nombre de caractère a selectionner a partir de cette position, mais on ne peut pas selectionner la position a partir de la fin pour aller vers le début ( c'est d'ailleurs un gros manque lorsque comme moi on ne sait pas le nombre de caractère que l'on va récupérer)
Renfield tu as raison avec xpath par exemple il ya moyen de controler très facilement les balises et leurs contenus
Mais c'est bon j'ai trouvé la solution, ce que j'ai fait c'est au lieu de renvoyer un tableau avec toute les données dedans j'ai retourné deux tableau dans lequel j'ai fait le tri en meme temps que je leur ais assigné des chaines

i = Listmenu.Count

' on compte le nombre de menu qu'il a trouvé

For j = 0 To i - 1

'on va chercher les 4 premier caractères des chaines

chaine = Microsoft.VisualBasic.Left(Listmenu(j).OuterXml, 4)

If (chaine = "<men") Then' si la balise est de la forme <menu> on met la chaine dans un tableau de menu

z = z + 1

tableauMenu(z) = Listmenu(j).InnerText

Else' sinon on met la chaine dans un tableau de sous menu

k = k + 1

tableau_sousMenu(k) = Listmenu(j).InnerText

EndIf

Next

Catch ex As Exception 'au cas ou l'individu n'aurai droit a aucun menu

MsgBox(

"Pas de menu trouvé")

EndTry

merci quand meme pour vos réponses!
vendredi 16 mai 2008 à 16:20:38 | Re : decoupage chaine de caractère

casy

Membre Club
"...le nombre de caractère a selectionner a partir de cette position, mais on ne peut pas selectionner la position a partir de la fin..."

Et le nombre de caractère à sélectionner ne serait-il pas par hasard, la longueur totale - la position à partir de la fin ??????

Substring (ou Mid en VB6) permet toutes les manipulations de découpages de chaines. Les fonctions Left, Right, .... ne sont en réalité que des surcharges de la fonction de base Substring.

---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]
vendredi 16 mai 2008 à 16:22:02 | Re : decoupage chaine de caractère

Renfield

Administrateur CodeS-SourceS
entre le 7eme du début et le 7eme  a partir de la fin

a.Substring(7, a.length-14)

non ?
vendredi 16 mai 2008 à 19:03:58 | Re : decoupage chaine de caractère

Kevin.Ory

Si 

Mais moi aussi je conseil de gérer les fichiers XML avec les outils XML fourni par le framework au lieu de "s'amuser" avec des SubString.

    Dim Doc As New Xml.XmlDocument
    Doc.Load("C:\Fichier.xml")


Après tu listes tes "menu" ou tes "sousmenu" plus ou moins comme tu l'entend, dans des boucles. Genre:
   
    For Each Elem As Xml.XmlElement In Doc.DocumentElement.ChildNodes
        Console.WriteLine("Menu: " & Elem.InnerText)
        For Each SousElem As Xml.XmlElement In Elem.ChildNodes
            Console.WriteLine("Soumenu: " & Elem.InnerText)
        Next
    Next

Easy
vendredi 16 mai 2008 à 19:38:02 | Re : decoupage chaine de caractère

bobby3

tu as raison renfield je ne croyai que chercher le nombre de caractère de la chaine a chaque fois était une opération trop lourde, mais ca a l'air assez basique
de tout facon mon probleme est resolé
le sujet est clos
merci a tous



Cette discussion est classée dans : caractère, probleme, chaine, decoupage, balises


Répondre à ce message

Sujets en rapport avec ce message

Excel decoupage de chaine de caractère [ par devba77 ] Bonjour, j'ai répertorié dans une colonne d'un fichier excel des noms de fichiers. Ex:colonneAAB01_2005.xlsAC02_2005.xlsBZ03_2005.xls... les nom Convertir une chaine de caractère en entier [ par aurelien2723 ] Bonour,Je cherche simplement l'équivalent du atoi() de C en VB. Existe t'il.J'ai fait plusieurs recherches en vain... :(Merci beaucoup :)Aurélien probleme de suppression dans une chaine de caractere [ par Link49 ] Bonjour à tout le monde! Voila j'ai un probleme, je recherche dans une chaine de caractere le caractere " (double quote) afin de le supprimer! Mais j' VBA traitement sur chaine de caractère [ par Maxou le petit ] Bonjour à tous;Je suis dans la "M" et je ne suis pas à l'aise sur les traitements de chaine de caractère.1) Si j'ai le contenu d'un champ texte d'une PB Traitement chaine de caractère dans VBA [ par Maxou le petit ] Bonjour à tous;J'ai une probléme avec une variable de format date que je dois retraitée pour être exportée dans un fichier "CSV" (Texte) pour une inte Exploiter une chaine de caractère [ par ShiZZle971 ] Salut,Je coince sur une étape de mon projet qui me donne sincèrement mal à la tête.Je possède déjà le code de l'incrémentation alphabétique et je sais l'apostrphe me pose un probleme [ par imad_lol ] salut tout le monde.mon probleme est le suivant :l'utilisateur saisie une chaine de caractere et il valide ,moi je dois cherché si cette chaine de car Récupérer une chaine de caractère dans un WebBrowser [ par tigre44 ] Bonjour à tous,J'essaie de récupérer le code HTML contenu dans un Web Browser pour le stocker dans un String afin de pouvoir effectuer des opérations probleme de chaine de caractere non reconnue [ par B0mbJacK ] Bonjour à tous, voici mon probleme quand je receptionne des données dans un socket et que je la convertit en string, j'obtiens ca :* dans mon debug.pr Problème chaîne de caractères [ par e040098k ] Bonjour, J'ai un problème lorsque je récupére une chaine de caractère contenu dans un champ de formulaire. C'est un chemin d'accès que j'ai moi même


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,652 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales