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

Contribuez .NET Discussion :

[C#][String] Comment remplacer des quotes par des crochets ouvrant et fermant ? [FAQ]


Sujet :

Contribuez .NET

  1. #1
    Membre habitué Avatar de meufeu
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    355
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 355
    Points : 166
    Points
    166
    Par défaut [C#][String] Comment remplacer des quotes par des crochets ouvrant et fermant ?
    Bonjour,

    Je travaille depuis plusieurs jours sur un petit (pour vous surement mais pas pour moi, la preuve) problème :

    il s'agit de remplacer une expression par une autre dans une chaine de caractère (string)

    je voudrais remplacer

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nom='toto' nom='tata' nom='mémé'
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    name.[toto] name.[tata] name.[mémé]
    Je me suis documenté :

    http://msdn.microsoft.com/library/de...classtopic.asp

    j'arrive a remplacer les = par des .
    les nom par name
    mais les 'toto' par [toto] la je bute

    Pourriez vous m'aider s'il vous plait ?

    Merci :!

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Tu ne peux pas faire un simple Replace de ' par [ car dans ce cas, il va te manquer l'autre crochet.

    Le mien serait p-e de découper ta chaine, mot à mot, puis de remplacer la première quote par [ et la dernière par ]

    A+

  3. #3
    Membre averti
    Avatar de sam_XIII
    Profil pro
    Inscrit en
    Août 2003
    Messages
    221
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2003
    Messages : 221
    Points : 353
    Points
    353
    Par défaut
    voici une fonctino que tu peux utiliser :
    elll parcour toute la chaine ...

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    public string replaceChar(string chaine, char car)
    {
    	string chaineTemp = string.Empty;
    	bool un = false;
    	for(int i = 0;i<chaine.Length;i++)
    	{
    		if(chaine[i].Equals(car))
    		{
    			if(un)
    			{
    				chaineTemp+= "]";
    				un = false;
    			}
    			else
    			{
    				chaineTemp+= "[";
    				un = true;
    			}
    		}
    		else
    		{
    			chaineTemp+= chaine[i];
    		}
    	}
    	return chaineTemp;
    }
    utilisation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    textBox2.Text = replaceChar(textBox1.Text,'\'');
    j'espère que cela t'aidera
    Avant de poster, voir les faq, les sources et utiliser la fonction rechercher

    Mon site

  4. #4
    Membre régulier
    Inscrit en
    Avril 2004
    Messages
    97
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 97
    Points : 91
    Points
    91
    Par défaut
    D'après ce que j'ai pul lire on peut remplacer un string par un string :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Supported by the .NET Compact Framework.
     
    [Visual Basic] Overloads Public Function Replace(String, String) As String
    [C#] public string Replace(string, string);
    [C++] public: String* Replace(String*, String*);
    [JScript] public function Replace(String, String) : String;
    Si tes chaines sont toujours de cette forme.Tu peux remplacer " =' " par " .[ " et " ' " par " ] ".

  5. #5
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Citation Envoyé par sam_XIII
    voici une fonctino que tu peux utiliser :
    elll parcour toute la chaine ...

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    public string replaceChar(string chaine, char car)
    {
    	string chaineTemp = string.Empty;
    	bool un = false;
    	for(int i = 0;i<chaine.Length;i++)
    	{
    		if(chaine[i].Equals(car))
    		{
    			if(un)
    			{
    				chaineTemp+= "]";
    				un = false;
    			}
    			else
    			{
    				chaineTemp+= "[";
    				un = true;
    			}
    		}
    		else
    		{
    			chaineTemp+= chaine[i];
    		}
    	}
    	return chaineTemp;
    }
    utilisation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    textBox2.Text = replaceChar(textBox1.Text,'\'');
    j'espère que cela t'aidera
    Interessant

    A mettre dans la FAQ



  6. #6
    Membre habitué Avatar de meufeu
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    355
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 355
    Points : 166
    Points
    166
    Par défaut
    Je vous remercie tous vraiment

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

Discussions similaires

  1. Comment remplacer les tabulations par des espaces ?
    Par richarno dans le forum Langage
    Réponses: 7
    Dernier message: 25/10/2007, 13h05
  2. Remplacer des balises par des valeurs dans une String
    Par RadicalBob dans le forum Langage
    Réponses: 4
    Dernier message: 26/04/2007, 15h22
  3. Comment remplacer le clavier par des boutons ?
    Par aliwassem dans le forum Langage
    Réponses: 1
    Dernier message: 14/12/2005, 19h00
  4. Réponses: 3
    Dernier message: 07/12/2005, 13h51
  5. Remplacer des boutons par des menus déroulants?
    Par drthodt dans le forum Access
    Réponses: 3
    Dernier message: 20/09/2005, 17h37

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