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

VB.NET Discussion :

Problème REPLACE pour symboliser n'importe quel caractère


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 10
    Par défaut Problème REPLACE pour symboliser n'importe quel caractère
    Bonjour.

    En ayant cherché sur internet, je n'ai pas trouvé la réponse à ma question.

    En fait, j'ai un string nom-prénom de ce style là: François DUPONT

    J'aimerais faire un replace juste pour pouvoir conserver le François.

    Je voulais à la base faire comme dans SQL:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     Form_Heure_detail.lbl_prenom_client.Text = Replace(dgv_heure.CurrentRow.Cells(3).Value.ToString(), " %", "")
    Le % ayant pour but de symboliser n'importe quel caractère, mais cela ne fonctionne pas. De même pour *.

    Cela existe il en VB.

    Amicalement.

  2. #2
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 420
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 420
    Par défaut
    Dans la syntaxe de Replace : Replace(expression, find, replacewith[, start[, count[, compare]]]).

    find ne peut pas être un ou des caractères génériques(*, ? ...) même pas un %.
    Dans ton exemple, tu devrais mettre explicitement le texte(le mot) à remplacer.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  3. #3
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Pourquoi ne pas faire un split sur l'espace ?
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    Form_Heure_detail.lbl_prenom_client.Text = dgv_heure.CurrentRow.Cells(3).Value.ToString().Split(' ')[0];
    L'appel à la méthode Split crée un tableau de string. Dans le cas de "François Dupond", le tableau contiendra deux valeurs : string[0] = "François" et string[1] = "Dupond". Donc l'indice 0 à la fin permet de récupérer le prénom.
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 10
    Par défaut
    Citation Envoyé par DotNetMatt Voir le message
    Pourquoi ne pas faire un split sur l'espace ?
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    Form_Heure_detail.lbl_prenom_client.Text = dgv_heure.CurrentRow.Cells(3).Value.ToString().Split(' ')[0];
    L'appel à la méthode Split crée un tableau de string. Dans le cas de "François Dupond", le tableau contiendra deux valeurs : string[0] = "François" et string[1] = "Dupond". Donc l'indice 0 à la fin permet de récupérer le prénom.
    J'ai essayé et ça ne fonctionne pas. Sans doute que cette fonction dans C n'existe pas pour VB.NET

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour,
    Citation Envoyé par samuel31 Voir le message
    J'ai essayé et ça ne fonctionne pas. Sans doute que cette fonction dans C n'existe pas pour VB.NET
    Il faut utiliser des parenthèses (l'espace n'est pas obligatoire c'est le caractère par défaut)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Form_Heure_detail.lbl_prenom_client.Text = dgv_heure.CurrentRow.Cells(3).Value.ToString().split()(0)
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

  6. #6
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Billets dans le blog
    3
    Par défaut
    Au temps pour moi, je n'avais pas vu qu'on était sur le forum VB.NET Merci rvt26 pour m'avoir corrigé
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  7. #7
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2014
    Messages : 10
    Par défaut
    Citation Envoyé par l_autodidacte Voir le message
    Dans la syntaxe de Replace : Replace(expression, find, replacewith[, start[, count[, compare]]]).

    find ne peut pas être un ou des caractères génériques(*, ? ...) même pas un %.
    Dans ton exemple, tu devrais mettre explicitement le texte(le mot) à remplacer.
    Je n'arrive pas à mettre cela en place. Pourriez m'écrire explicitement le code?

    Je ne peux pas mettre le mot, car cela provient d'un datagridview où je vais avoir plusieurs nom et prénom différent

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

Discussions similaires

  1. Insertion avec n'importe quel caractère
    Par panthere noire dans le forum Requêtes
    Réponses: 7
    Dernier message: 26/02/2012, 08h58
  2. Réponses: 2
    Dernier message: 29/04/2011, 12h53
  3. fonction pour supprimer n'importe quel enregistrement
    Par totofe49 dans le forum jQuery
    Réponses: 4
    Dernier message: 25/03/2011, 08h17
  4. Expression régulière : "n'importe quel caractère"
    Par Thordax dans le forum Langage
    Réponses: 6
    Dernier message: 30/03/2010, 15h36
  5. Problème pour exécuter une chaîne de caractères
    Par Pongo dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 02/09/2005, 10h34

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