J'ai une chaîne dans le format suivant dans un fichier délimité par des virgules:Utilisation d'expressions régulières pour la recherche modèle avec Remplacer
someText, "Text with, delimiter", moreText, "Text Again"
Ce que je dois faire est de créer une méthode qui va chercher dans la chaîne, et sera remplacez les virgules à l'intérieur du texte cité par un signe dollar ($).
Après la méthode, la chaîne sera:
someText, "Text with$ delimiter", moreText, "Text Again"
Je ne suis pas tout à fait bien avec RegEx, mais je voudrais savoir comment je peux utiliser des expressions régulières pour rechercher un motif (trouver une virgule entre guillemets), puis remplacez cette virgule par le signe dollar.
Cela ressemble à CSV. Est-ce juste une coïncidence? S'il s'agit d'un fichier CSV, sachez que CSV n'est pas un langage "régulier" et ne peut donc pas être analysé complètement et correctement via une expression régulière dans tous les cas. Voir les commentaires et les réponses à cette question: http://stackoverflow.com/questions/1189416/c-regular-expressions-how-to-parse-comma-separated-values-where-some-values –
Si c'est juste un hack sur le chemin de 'Split (',')', vous devriez certainement utiliser un analyseur CSV. Que feriez-vous si la chaîne contenait un '$', en passant ('1,2 ', $ 5,4', 6')? – Kobi
@Daniel - En fait, le CSV * valide est * une langue normale (tant que vous ne comptez pas toutes les lignes ont le même nombre de colonnes inconnues). Il ne contient aucune imbrication, ni aucun contexte à prendre en compte. – Kobi