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 :

[VB.NET]Majuscule apres espace


Sujet :

VB.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 143
    Points : 55
    Points
    55
    Par défaut [VB.NET]Majuscule apres espace
    Bonjour,


    Je souhaiterai réussir à mettre en forme une chaine de caractere en mettant toutes les premieres lettres en majuscules apres chaque espace dans ma chaine de caractere...

    Je dois dire que je galère un peu (beaucoup ...?!?)

    D'avance meric pour votre aide et vos conseils.

  2. #2
    Membre éclairé Avatar de methylene
    Profil pro
    Inscrit en
    Février 2010
    Messages
    659
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2010
    Messages : 659
    Points : 813
    Points
    813
    Par défaut
    Salut,

    Cherche du coté de Ucase et de la fonction Mid() ainsi que Lenght.

    Cependant il ya peut-être une fonction qui fait déjà cela, mais en tout cas je ne la connais pas.

    Code brut à améliorer (entre autre gérer le cas ou la fin de la string serait un espace) et à adapter, je t'ai donné mon idée.

    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
            Dim mystring As String
            Dim lon As Integer
     
            mystring = "ta châine de caractères"
            lon = mystring.Length
     
            For i = 0 To lon
     
                If Mid(mystring, i, 1) = "" Then
     
                    mystring = Mid(mystring, 0, i) & UCase(Mid(mystring, i + 1, 1)) & Mid(mystring, i + 2)
     
                End If
     
            Next
    Geeker c'est comme manger, on ne peut pas s'en passer !!!

    Tout est objet !!!

    ____________________________________

    http://www.geekingmania.com

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    143
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 143
    Points : 55
    Points
    55
    Par défaut
    Merci pour ta réponse

    Moi j'avais essayé ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim retour As String
            Dim i, j As Integer
            retour = Initcap_string(ch)
            While i < ch.Length()
                If retour(i) = " " Then
                    retour = Replace(retour, retour(i + 1).ToString, retour(i + 1).ToString.ToUpper, Start:=i - 1, Count:=1)
                End If
                i += 1
            End While

    Mais le start ne fonctionne pas, et si je ne le mets pas j'ai un problème si j'ai par exemple "les etangs" il me ressort "LEs etangs", au lieu de "Les Etangs"

    Et ton code me leve une erreur aussi :
    L'argument 'Start' doit être supérieur à zéro.

    Edit : Ceci marche !

    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
    Dim mystring As String
            Dim lon As Integer
     
            mystring = Initcap_string(ch)
            lon = mystring.Length
     
            For i = 1 To lon
     
                If Mid(mystring, i, 1) = " " Then
     
                    mystring = Mid(mystring, 1, i) & UCase(Mid(mystring, i + 1, 1)) & Mid(mystring, i + 2)
     
                End If
     
            Next

    Merci beauccoup a toi !

  4. #4
    Membre éclairé Avatar de methylene
    Profil pro
    Inscrit en
    Février 2010
    Messages
    659
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2010
    Messages : 659
    Points : 813
    Points
    813
    Par défaut
    Je dois t'avouer ne pas avoir du tout tester ce code, l'ayant tapé directement sous Developpez.com.

    Effectivement le start doit commencer à 1 et ne peut commencer à 0, petite erreur d'attention.

    Sinon tu devrait essayer de tester une chaîne de caractères finissant par un espace, dans mon code je pense que cela t'aurait généré une erreur, mais après ton edit je ne sais pas.

    Bonne continuation.
    Geeker c'est comme manger, on ne peut pas s'en passer !!!

    Tout est objet !!!

    ____________________________________

    http://www.geekingmania.com

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

Discussions similaires

  1. [VB.NET] PB après réinstallation de poste
    Par ricil78 dans le forum Windows Forms
    Réponses: 4
    Dernier message: 18/01/2010, 20h19
  2. [AC-2007] Mettre un champs en majuscule après publipostage
    Par miamou dans le forum VBA Access
    Réponses: 2
    Dernier message: 16/12/2009, 10h37
  3. [VB.NET] Deconnexion apres DownloadFile
    Par KrSt94 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 12/01/2007, 13h48
  4. Réponses: 5
    Dernier message: 07/10/2006, 12h50
  5. Majuscule après apostrophe
    Par Didier77 dans le forum Access
    Réponses: 6
    Dernier message: 04/09/2006, 09h02

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