reformater chiffres seulement dans « num » attribut Les valeurs peuvent faire:
(?<=num='\d+)(?=(?:\d{3})+(?!\d))
Mais notez que cela ne fonctionnera que dans regexes .NET, qui est ce que RegExp Designer utilise. La plupart des arômes regex n'autorisent que les lookbehinds correspondant à un nombre fixe de caractères. Java regexes permettent d'assertions arrières de longueur variable aussi longtemps que il y a une longueur maximale évidente, de sorte que vous pouvez truquer en utilisant {min,max}
quantificateurs un nombre arbitraire pour le maximum:
(?<=num='\d{1,20})(?=(?:\d{3})+(?!\d))
regex John Hyland travaillera en saveur que les supports lookbehinds.
EDIT: J'ai presque oublié; voici comment vous pouvez le faire sans lookbehinds:
(num='\d{1,3}|\G\d{3})(?=(?:\d{3})+(?!\d))
Je préfère celui-ci pour des raisons purement esthétiques. :)
EDIT2: J'ai oublié de mentionner que la chaîne de remplacement pour le dernier est "$1,"
Mes données: 50000 - Je ne veux pas convertir le numéro 50000, seul le numéro 12345678. Comment puis-je faire ceci? –
Avez-vous essayé l'expression rationnelle dans cette réponse? Ça marche pour moi. –