Bonjour,
Je veux remplacer les caractères spéciaux d'une chaine par un espace.
Comment faire?
Version imprimable
Bonjour,
Je veux remplacer les caractères spéciaux d'une chaine par un espace.
Comment faire?
Regardes du côté de String.Replace(oldChar, newChar).
t'a chaine est longue?
j'ai bien une idée mais elle risque d'être un peut barbare :mrgreen:
Code:
1
2
3
4
5
6
7
8
9 'tu prend ta chaine Dim MaChaine As String ' tu enléve le caractére spéciale Dim Convertion() As String = MaChaine.Split("caractéreSpéciale") ' tu rassemble les morceaux avec l'espace Dim NewChaine As String = Nothing For ii As Integer = 0 To Convertion.Length - 1 NewChaine = NewChaine & " " & Convertion(ii) Next
pour compléter ce que tu disais "Gurdil le nain"
Sous VS 2010 j'ai plus ça:
Code:Replace(MaChaine, "Caratérespéciale", "NewCaractere")
est ce qu'il y a une fonction qui remplace en une seule fois comme une expression régulière?
c'est à dire ...
explique tout ton problème, met des nom sur tes suppositions *ça ira plus vite je pense*
si ta question est de savoir si la fonction "Replace" prend en charge les chaines ou les caratéres, je pense que oui *a essayer*
j'ai un champ de saisie de téléphone, la saisie est libre, je veux remplacer les caractères spéciaux par des espaces
quels sont tes caractères spéciaux? tu a des exemples de numéros qui peuvent être saisis?
*on va y arriver à connaitre le sujet en posant toutes les question XD*
Oups, j'avais oublié un paramètre :mouarf:
Il ne me semble pas que la fonction Replace puisse prendre un tableau de caractère, par contre tu peux toujours te refaire une fonction du genre :
Code:
1
2
3
4
5
6
7
8
9
10 Function replaceCaractereSpeciaux(ByVal chaine As String, ByVal array As List(Of Char)) As String For Each spec As Char In array If (chaine.Contains(spec)) Then chaine = Replace(chaine, spec, " ") End If Next Return chaine End Function
Bonjour,
Si il s'agit d'un numéro de tel, (que des chiffres ), à tester :
Code:
1
2
3
4
5
6
7 Dim maChaine As String = "%12/25,32 12*25-" For Each car As Char In maChaine If Not Char.IsDigit(car) Then maChaine = maChaine.Replace(car, " ") End If Next MessageBox.Show(maChaine.Trim(" "c))