Comment entourer des mots avec des guillemets Ex. états-unis, des États-Unis, avec « États-Unis », « États-Unis »,Comment entourer des mots avec des guillemets
Répondre
Dans votre cas
resultString = Regex.Replace(subjectString, @"\b[^,]+\b", "'$0'");
travailleraient, mais vous pouvez définir vos besoins un peu plus clairement.
EDIT:
Maintenant que vous avez précisé que votre chaîne est toujours divisée en deux parties (Nom et code de pays), cela pourrait être mieux:
resultString = Regex.Replace(subjectString, @"^(.+),\s*([^,]+)$", "'$1', '$2'", RegexOptions.Multiline);
Cela va changer la chaîne multiligne
United States, US
Switzerland, CH
BOLIVIA, PLURINATIONAL STATE OF, BO
dans
'United States', 'US'
'Switzerland', 'CH'
'BOLIVIA, PLURINATIONAL STATE OF', 'BO'
(mais fonctionne également si vous l'appliquez à une ligne à la fois).
Cela va casser par ex. avec "Nation of Brunei, la Demeure de la Paix, BR" - notez que ceci est le nom officiel: http://en.wikipedia.org/wiki/Brunei. En outre, divers autres gotchas comme "Danemark, Royaume de, DK". Comme vous le dites, les exigences ne sont pas claires. – Piskvor
Votre regex produit rersult - «Etats-Unis», «US».Je pense que vous devriez remplacer '*' par '+' –
@Piskvor J'ai des noms de pays de http://www.iso.org/iso/english_country_names_and_code_elements – Michael27
var quoted = myString.Replace("US", "'US'").Replace("United States", "'United States'");
Pas besoin de regex pour une tâche simple.
En fait, regex est nécessaire car j'ai une liste de chaînes à partir du fichier txt – Michael27
Si cette liste de chaînes est Liste
Voici une solution simple, en utilisant la manipulation de chaînes:
string s = "BOLIVIA, PLURINATIONAL STATE OF, BO";
Wrap avec des guillemets simples:
int lastComma = s.LastIndexOf(", ");
s = String.Format("'{0}', '{1}'", s.Remove(lastComma), s.Substring(lastComma + 2));
Si vous avez toujours 2 lettres à la fin de la chaîne, vous pouvez simplifier encore plus loin:
int lastComma = s.Length - 4;
Vous voulez probablement une vérification d'erreur, mais cela ressemble à un ver tâche simple, qui ne nécessite rien d'aussi sophistiqué qu'une expression régulière.
- 1. Entourez deux mots avec des guillemets dans Vim
- 2. Enclose des mots spécifiques avec guillemets simples
- 3. Quand entourer des champs SQL avec des apostrophes?
- 4. Comment utiliser sed pour trouver et entourer tous les mots après un signe égal entre guillemets
- 5. Comment entourer tous les mots espacés avec des accolades dans AWK?
- 6. regexp: tw- mots préfixés avec des guillemets optionnels
- 7. Comment entourer du texte avec des parenthèses en utilisant regex?
- 8. sqlite/python - paramètres nommés sans entourer de guillemets?
- 9. Expression régulière pour entourer la date entre guillemets
- 10. Commande d'analyse avec des guillemets entre guillemets
- 11. xsl-fo bloc-guillemets avec des guillemets
- 12. problèmes à postgresql recherche en texte intégral avec des mots, contenant des guillemets simples
- 13. Comment concaténer des variables JavaScript en une chaîne complexe avec des guillemets et des guillemets doubles?
- 14. Comment insérer des guillemets simples avec redactor.js?
- 15. comment afficher des guillemets personnalisés avec sifr?
- 16. comment imprimer des guillemets doubles avec des variables en perl
- 17. Delphi live template pour entourer la sélection avec des parenthèses
- 18. Remplacer des guillemets doubles guillemets simples avec awk
- 19. texte Entourer avec étiquette et peuplant tag
- 20. Échapper seulement guillemets simples (laisser des guillemets seuls) avec htmlspecialchars()
- 21. rechercher avec des guillemets et sans guillemets dans php mysql
- 22. Utilisation de REGEX avec des guillemets échappés entre guillemets
- 23. C# énumérations avec des mots clés réservés
- 24. Comment utiliser regex pour mettre des guillemets autour d'une instruction
- 25. Comment échapper des guillemets doubles dans une fonction SQL 'fulltext'?
- 26. Comment diviser des mots avec certains critères?
- 27. Comment puis-je mettre en évidence des mots complets avec des mots-clés avec regexp?
- 28. Echapper des guillemets simples entre guillemets qui est entre guillemets
- 29. Ruby regex extraire des mots
- 30. Enveloppez un contrôle ASP.NET avec des guillemets
Définir "mot". "Etats-Unis" semble être deux mots pour moi. –
J'ai une chaîne comme dans ex. Chaîne s = "États-Unis, US" remplacez cette chaîne par la chaîne s1 = "'États-Unis', 'US'" – Michael27
Avez-vous l'intention d'entourer de guillemets des parties de chaîne entre ','? L'échantillon que vous avez fourni est vague, c'est évidemment ce que les Etats-Unis ne sont pas un "mot" –