Quelle est l'expression régulière pour valider une liste délimitée par des virgules comme celle-ci:
12365, 45236, 458, 1, 99996332, ......
Quelle est l'expression régulière pour valider une liste délimitée par des virgules comme celle-ci:
12365, 45236, 458, 1, 99996332, ......
Cela dépend un peu de vos exigences exactes. Je suppose: tous les nombres, toutes les longueurs, les nombres ne peuvent pas avoir de zéros ni des virgules ou des points décimaux. les numéros individuels toujours séparés par une virgule, puis un espace, et le dernier numéro n'a PAS de virgule et d'espace après. N'importe laquelle de ces erreurs simplifierait la solution.
([1-9] [0-9] *, []) * [1-9] [0-9] *
Voici comment j'ai construit ça mentalement:
[0-9] any digit.
[1-9][0-9]* leading non-zero digit followed by any number of digits
[1-9][0-9]*, as above, followed by a comma
[1-9][0-9]*[ ] as above, followed by a space
([1-9][0-9]*[ ])* as above, repeated 0 or more times
([1-9][0-9]*[ ])*[1-9][0-9]* as above, with a final number that doesn't have a comma.
Match en double délimité par des virgules éléments:
(?<=,|^)([^,]*)(,\1)+(?=,|$)
Cette expression peut être utilisée pour partager les valeurs d'une virgule delimitted liste. Éléments de la liste peuvent être cotées, non cotées ou vide. Des virgules à l'intérieur d'une paire de guillemets ne sont pas appariés.
,(?!(?<=(?:^|,)\s*"(?:[^"]|""|\\")*,)(?:[^"]|""|\\")*"\s*(?:,|$))
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.