Регулярное выражение - проблема с шаблоном [,-?[0-9]+]*
Это мой шаблон:
^~[0-9]+@Y 1,710,-?[0-9]+[,-?[0-9]+]*\n$
По какой-то причине это совпадает:~01@Y 1,710,9,
Но нет: ~01@Y 1,710,9
Я не понимаю, зачем нужна последняя запятая?
1 ответ
Я думаю, что проблема здесь
[,-?[0-9]+]*
Будет соответствовать "~01@Y 1,710,9,"
или же "~01@Y 1,710,[9]"
Если вы просто хотите определить совпадение выражения с запятой, вопросительным знаком, числом или "-" в конце, вы можете попробовать выражение ниже:
^~[0-9]+@Y 1,710,-?[0-9]+[,?0-9-]*$