Comment remplacer un caractere par un autre dans une chaine de caractere ?

- - Dernière réponse : cs_ShayW
Messages postés
3251
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
16 octobre 2019
- 4 janv. 2012 à 20:30
Hi everybody !!

Je voudrais savoir comment remplacer un caractere par un autre dans une chaine de caractere !

par exemple pour une fonction mathématique telle ke :

a = "3x + 1"

comment remplacer x par un chiffre et effectuer le calcul :

a = 3*x + 1

avec x la valeur choisie ..

Merci pour tout ceux ki essaieront de chercher et ki pourront m'aider ...
Vous pouvez me mailez à bigbang00@caramail.com

Merci a tous
Bigbang
Afficher la suite 

9 réponses

Meilleure réponse
2
Merci
Fô pas ce konpliker la vie en VB:

Replace(chaine, caractère a chercher, remplacer par)
ExempleText1.text Replace(text1.text, "x", "A")

C'est vraiment facile...

Si tu ne met pas = , enlève les parenthèses.

C'est possible que "chaine, caractère a chercher, remplacer par" soit dans un autre ordre, je ne sais plus bien car je fais ca de mémoire et je suis à l'école et j'ai pas VB

[mailto:magidev@hotmail.com magidev@hotmail.com]

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 198 internautes nous ont dit merci ce mois-ci

Messages postés
4
Date d'inscription
lundi 25 mars 2002
Statut
Membre
Dernière intervention
16 juin 2004
1
1
Merci
Pour ceux que ça peut aider:
La Fonction marche impec je laisse les crédits mm si ça prend de la place

''************ Code Start **********
'This code was originally written by Alden Streeter.
'It is not to be altered or distributed,
'except as part of an application.
'You are free to use it in any application,
'provided the copyright notice is left unchanged.
'
'Code Courtesy of
'Alden Streeter
'
Function FindAndReplace(ByVal strInString As String, _
strFindString As String, _
strReplaceString As String) As String
Dim intPtr As Integer
If Len(strFindString) > 0 Then 'catch if try to find empty string
Do
intPtr = InStr(strInString, strFindString)
If intPtr > 0 Then
FindAndReplace = FindAndReplace & Left(strInString, intPtr - 1) & _
strReplaceString
strInString = Mid(strInString, intPtr + Len(strFindString))
End If
Loop While intPtr > 0
End If
FindAndReplace = FindAndReplace & strInString
End Function
Messages postés
5
Date d'inscription
jeudi 17 février 2005
Statut
Membre
Dernière intervention
28 mai 2005
1
1
Merci
xcuse moi mais comment le faire en C.???
slt g un grand problème.Au fait je faire une resolution de fonction. mais je voudrait demander à l'utilisateur de rentrée la fonction voulue et la machine se chargerra de lui donner les racines. les choses se gate si je veux faire f(1) ou f(2),....j'ai essaille de lire la chaine et partout où il trouvera x de la remplacer par la valeur 1, 2 ou....
float f(char *fonc, float x)
{
char *fon = (char *)malloc(50);
int i = 0;
strcpy(fon,fonc);
for(i;i<=strlen(fon);i++)
{
if (fon[i]=='x')
fon[i]= x;
}
return (float)*fon;
free(fon);
}
mais il me retour des trucs bizarezzzzzz, c urgent
Messages postés
147
Date d'inscription
mercredi 3 décembre 2003
Statut
Membre
Dernière intervention
12 juin 2008
0
Merci
Bjr tt le monde,

je sèche sous VBA:
Dans un excel, je doit lire des cellules qui contiennent des adresses MAC.
Ces adresses sont saisies en copier-coller depuis des fenêtres DOS et/ou UNIX et le responsable info. exige que les adresses reste notées comme suit : 00:0B:5D:73:6D:96
et ce pour des raisons de lisibilité dans le fichier.

Je doit construire un fichier text destinné à alimenter un serveur DHCP.
j'ai donc une variable string qui récupère l'adresse MAC:
MakeAddMAC = ActiveCell.Value '00:0B:5D:73:6D:96
Comment je vire les ":" ???

d'avance, merci à tous.
Messages postés
128
Date d'inscription
vendredi 19 septembre 2003
Statut
Membre
Dernière intervention
20 novembre 2007
0
Merci
OH PUTAIN MERCI TROP MAGIDEV !!!!!!!
je vien de me casser le cul pour faire un remplacement de balise dans un RichText (les et remplacés par des "\i " et "\i0 ")
je cherchai avec Mid(...,...,...,...) = ... pour remplacer !!! mais ça bugais !

bon salut !

Gagou9
Messages postés
2
Date d'inscription
mercredi 12 octobre 2011
Statut
Membre
Dernière intervention
4 janvier 2012
0
Merci
tu mets remplacer ":" par "" simplement, et il vire les ":"
-1
Merci
un truc comme ça vite fait en VBA:

Sub nn()
'remplace un caractere "x" dans chaine
'par un autre "A"
chaine = "3*x+1"
temp = (InStr(chaine, "x"))
remplace = "A"
resultat = Left(chaine, temp - 1) & remplace & Right(chaine, Len(chaine) - temp)
MsgBox (resultat)
End Sub
Messages postés
33
Date d'inscription
mercredi 18 octobre 2000
Statut
Membre
Dernière intervention
4 janvier 2010
-1
Merci
sedik hafdaoui
Messages postés
3251
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
16 octobre 2019
46
-1
Merci
Bonsoir bigban
c'est plus compliqué
si j'écris
en vb.net
dim str1 as string  
str1 = (3 + 4 * 8).ToString

'la valeur de str1 = "35"
ce n'est pas un integer mais un string

si tu écris
str1 = "x + 2*x"
 str1 = str1.Replace("x", "6")


str1 à la valeur de "6 + 2*6"
c'est un string et non une expression arithmétique

lien