Supprimer une partie de String dans visual basic
Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Supprimer une partie de String dans visual basic



  1. #1
    Neilmine

    Supprimer une partie de String dans visual basic


    ------

    Bonjour,

    Ce que je cherche à faire est de récupérer les arguments qui sont utiliser lors de l’exécution de mon application. J'utilise Environment.CommandLine.ToStri ng pour récupérer les argument mais ça retourne aussi le chemin de l’exécutable que j'essai donc de supprimer pour ne récupérer que l'argument.

    J'ai une variable string qui contient :
    "salut" test 1
    Ce que je cherche à faire est récupérer ce qui est après :
    "salut"
    donc :
    test 1
    Ce qui remplace salut contient des espaces mais jamais de " . Mais ce qui suis "salut" peut contenir absolument n'importe quoi.

    J'ai déjà penser à chercher " avec un espace juste après, (donc le second " a la fin de salut) avec inStr() puis supprimer tout entre cet endroit et le début de la String. Ce qui laissera a la fin juste test 1. Mais je n'est pas trouver la commande qui permet de supprimer une partie d'une string entre deux place de caractère par exemple supprimer entre le caractère position 1 et celui position 20.
    Existe t'il une commande permettant de la faire? Ou alors une autre façon de faire. Ou une autre façon de récupérer l'argument.

    merci

    -----
    Dernière modification par Neilmine ; 05/04/2015 à 22h40.

  2. #2
    Jack
    Modérateur

    Re : Supprimer une partie de String dans visual basic

    Le plus simple est d'utiliser des méthodes qui gèrent directement la ligne de commande:
    https://msdn.microsoft.com/en-us/lib...vs.110%29.aspx

  3. #3
    cherbe

    Re : Supprimer une partie de String dans visual basic

    Citation Envoyé par Neilmine Voir le message
    Bonjour,

    Ce que je cherche à faire est de récupérer les arguments qui sont utiliser lors de l’exécution de mon application. J'utilise Environment.CommandLine.ToStri ng pour récupérer les argument mais ça retourne aussi le chemin de l’exécutable que j'essai donc de supprimer pour ne récupérer que l'argument.
    Bonjour
    Problème de débutant en programmation et largement documenté. Tu n'as pas beaucoup cherché !
    Si c'est du VB :
    Code:
    new_chaine=right(ancienne_chaine,len(ancienne_chaine)-6)
    la fonction right() extrait X caractères à droite de "ancienne_chaine"
    la fonction len() renvoie le nombre de caractères (longueur) de "ancienne_chaine"
    la chaine "salut" contenant 5 caractères, on commence à 5+1. Donc len(ancienne_chaine)-6 renvoie le nombre de caractères à extraire à droite.
    Si tu as besoin de savoir où se trouve précisément la chaine "salut", utilise InStr(ancienne_chaine, "salut") pour connaitre la position du "s" de salut.

  4. #4
    Jack
    Modérateur

    Re : Supprimer une partie de String dans visual basic

    Il me semble que la méthode que j'ai proposée plus haut est plus simple, la ligne de commande étant parsée dans un tableau de chaine. Il n'y a plus qu'à piocher dans le tableau pour récuopérer le bon argument.

    A+

  5. A voir en vidéo sur Futura
  6. #5
    cherbe

    Re : Supprimer une partie de String dans visual basic

    Citation Envoyé par Jack Voir le message
    Il me semble que la méthode que j'ai proposée plus haut est plus simple, la ligne de commande étant parsée dans un tableau de chaine. Il n'y a plus qu'à piocher dans le tableau pour récuopérer le bon argument.

    A+
    Alors j'ai mal compris !
    quand il écrit "je cherche à récupérer ce qui est à droite de salut...", il me semblait qu'il voulait découper une sous-chaine, autrement dit, qu'il voulait saucissonner un argument.
    Ce n'est pas ça ?

  7. #6
    Jack
    Modérateur

    Re : Supprimer une partie de String dans visual basic

    Ah si, tu as raison. Le problème est juste de récupérer la chaine des arguments. Je n'en vois pas trop l'intérêt s'il y en a plusieurs puisqu'il va falloir les traiter ensuite.

  8. #7
    Neilmine

    Re : Supprimer une partie de String dans visual basic

    J'ai réussi en utilisant la méthode de Cherbe
    je récupère les arguments :
    "salut" test 1
    puis je supprime le premier " :
    salut" test 1
    puis je supprime tout jusqu'au second " :
    test 1
    puis je supprime l'espace qui suis le second " :
    test 1
    il ne reste donc plus que test 1
    Ce n'est peut être pas optimisé mais ça marche

    Code:
    argument = Environment.CommandLine.ToString
    argument = Microsoft.VisualBasic.Right(argument, Len(argument) - 1)
    argument = Microsoft.VisualBasic.Right(argument, Len(argument) - InStr(argument, Chr(34)))
    argument = Microsoft.VisualBasic.Right(argument, Len(argument) - 2)
    ps : il y a toujours un seul argument
    Dernière modification par Neilmine ; 06/04/2015 à 13h01.

  9. #8
    Jack
    Modérateur

    Re : Supprimer une partie de String dans visual basic

    ps : il y a toujours un seul argument
    En principe, dans une ligne de commande, test 1 est considéré comme composé de 2 arguments

  10. #9
    Bluedeep

    Re : Supprimer une partie de String dans visual basic

    Citation Envoyé par Neilmine Voir le message

    Code:
    argument = Environment.CommandLine.ToString
    argument = Microsoft.VisualBasic.Right(argument, Len(argument) - 1)
    argument = Microsoft.VisualBasic.Right(argument, Len(argument) - InStr(argument, Chr(34)))
    argument = Microsoft.VisualBasic.Right(argument, Len(argument) - 2)
    ps : il y a toujours un seul argument
    Les fonctions Right, Left etc ... sont de vieilles vérrues du VB avant VB.Net gardées dans une assembly spécifique pour conserver une compatibilité source pour les nanars.

    Eviter de les utiliser; mieux vaut utiliser directement la méthode SubString sur l'instance de string elle même.

  11. #10
    cherbe

    Re : Supprimer une partie de String dans visual basic

    Citation Envoyé par Bluedeep Voir le message
    Les fonctions Right, Left etc ... sont de vieilles vérrues du VB ...
    c'est du racisme ça

Discussions similaires

  1. Problème de réception port série visual basic ( visual studio 2012)
    Par extremgear dans le forum Programmation et langages, Algorithmique
    Réponses: 9
    Dernier message: 30/07/2013, 22h44
  2. string visual basic
    Par spartan3 dans le forum Programmation et langages, Algorithmique
    Réponses: 1
    Dernier message: 15/05/2013, 15h52
  3. Traduction des commandes SQL dans visual Basic Studio pour une application windows mobile
    Par invite0da6e6b6 dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 10/12/2011, 15h06
  4. visual basic 6
    Par geniant dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 22/06/2011, 08h21
  5. problème dans mon mini projet développé en visual basic express 2010
    Par invite244237cc dans le forum Programmation et langages, Algorithmique
    Réponses: 9
    Dernier message: 25/04/2011, 17h18