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

C# Discussion :

Spliter une chaine de caractères en 2 listes suivant une regex


Sujet :

C#

  1. #1
    Membre à l'essai
    Homme Profil pro
    Développeur
    Inscrit en
    Janvier 2021
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Janvier 2021
    Messages : 50
    Points : 15
    Points
    15
    Par défaut Spliter une chaine de caractères en 2 listes suivant une regex
    Bonsoir,

    Je suis un stagiaire et actuellement je développe une solution en C# qui me permet de récupérer une chaîne de caractère dans une cellule d'un fichier excel. Une fois cette chaîne récupérée, il faut séparer les éléments de cette chaine en 2 autres listes (sample et reference) suivant une regex. C'est a dire que si jamais de un élément cette chaîne correspond à la regex, il faut l'envoyer dans la liste "sample" et si à l'inverse cela ne correspond pas, il faut l'envoyer dans la liste "reference".

    Depuis plusieurs jours, j'essaie de régler ce problème mais je n'y arrive pas j'ai d'abord essayé la méthode regex split mais elle ne fonctionnait pas comme il faut, quand je lance la console il n'y a aucun élément qui est affiché.
    Et puis je suis parti sur la méthode regex match avec une condition à l'intérieur mais ça ne marche pas comme je souhaite.

    Voici un bout de code :
    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
     
    for (int i = 1; i <= rowCount; i++)
                        {
                            IRow curRow = sheet.GetRow(i);
     
                            string cellValue1 = curRow.GetCell(1).StringCellValue.Trim();
     
                            List<Match> sample = new List<Match>();
                            List<Match> reference = new List<Match>();
                            string pattern = @"C-[0-9][0-9][0-9][0-9][0-9][0-9]-S-[0-9][0-9][0-9][0-9]";
                            Regex rgx = new Regex(pattern);
                            string imput = cellValue1;
     
                            foreach (Match m in rgx.Matches(imput))
                            {
                                if(m.Success)
                                {
                                    sample.Add(m);
                                }
                                Console.WriteLine(sample);
                            }
    "CellValue1" correspond à la chaîne de caractère récupérer depuis la cellule du excel.

    Pouvez-vous m'aidez à trouver une solution à mon problème ?

    Merci de votre compréhension.

  2. #2
    Membre à l'essai
    Homme Profil pro
    Développeur
    Inscrit en
    Janvier 2021
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Janvier 2021
    Messages : 50
    Points : 15
    Points
    15
    Par défaut
    j'ai oublié de préciser à quoi peuvent ressembler les chaînes de caractères qui sortent du excel.

    Voici quelques exemples :

    Exemple 1: " C-210104-S-117 2 ; C-210104-S-118 1 ; C-210104-S-118 2 ; Ref 100ppm QC4 ; Ref 1000ppm QC4 ; "

    Exemple 2 : " QC4 1000 ppm ; C-191108-S-0095 ; C-191108-S-0095 ; QC4 100 ppm ; QC4 1000 ppm ; Et 500 ppm ; Et 1000 ppm ; Et 2000 ppm ; "


    Merci de votre compréhension.

Discussions similaires

  1. Réponses: 2
    Dernier message: 06/03/2009, 08h32
  2. spliter une chaine de caractère
    Par solen dans le forum Débuter
    Réponses: 6
    Dernier message: 18/07/2008, 17h08
  3. Réponses: 12
    Dernier message: 03/07/2008, 13h53
  4. Réponses: 4
    Dernier message: 01/05/2008, 18h15
  5. [Listes ou Chaines de caractères] Une idée..
    Par KiLVaiDeN dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 25/04/2006, 11h54

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