2 votes

Trouver les sous-chaînes en majuscules et les envelopper avec des balises d'acronymes

Par exemple, remplacez la chaîne de caractères Yangomo, Congo, DRC avec Yangomo, Congo, <acronym>DRC</acronym> . Il peut y avoir potentiellement plusieurs variantes de majuscules dans chaque chaîne. Je suppose une forme de regex ?

Merci.

5voto

Pointy Points 172438

Eh bien, un exemple très simple pourrait être :

var replaced = original.replace(/\b([A-Z]+)\b/g, '<acronym>$1</acronym>');

Cependant, ce genre d'opération présente toujours des complications ; tout dépend du matériau source. (Le " \b " correspond aux limites des mots, et est une astuce précieuse pour toutes sortes d'occasions).

modifier - L'utilisateur perspicace Buh Buh fait remarquer qu'il pourrait être intéressant de n'affecter que les chaînes de caractères de plus de deux caractères, ce qui donnerait /\b([A-Z]{2,})\b/ .

0voto

Ollie Points 196

Personnellement, j'utiliserais PHP pour décomposer la chaîne de caractères, puis une expression rationnelle pour trouver toutes les majuscules. /[A-Z]+/ puis utiliser PHP pour insérer les balises (en utilisant str_replace).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X