Проверить строку чисел, разделенных запятыми, с помощью регулярного выражения? - PullRequest
2 голосов
/ 12 января 2020

Мне нужно регулярное выражение для проверки 3 чисел, затем ,, и снова 3 числа, и снова практически любое количество раз. И запятая может быть в начале или в конце (но строго одна).

Итак, это допустимые значения:

, 111,111,

112,112,

, 112,112,113,114,111,

, 114,115

, 142,

, 141

Неправильные входы:

,,

,,

,, 145 ,,,

Я сделал как:

var re = /^[0-9]{3}([,][0-9]{3})*$/;

Но это не работает хорошо, и он принимает только 2 группы. И всегда хочу запятую в конце.

1 Ответ

1 голос
/ 12 января 2020

Вы можете использовать это регулярное выражение:

^,?(?:\d{3},)*\d{3},?$

Демонстрация RegEx

Заменить \d на [0-9], если оно не поддерживается вашей платформой регулярных выражений.

RegRx Описание:

  • ^,?: сопоставить необязательный , в начале
  • (?:\d{3},)*: сопоставить с захват группы 0 или более раз. Мы совпадаем с 3 di git числом, за которым следует , внутри этой группы.
  • \d{3}: соответствует 3 di git числу
  • ,?$: соответствует необязательному , в конце
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...