regex
#регулярное выражение
Вопрос:
Я должен создать регулярное выражение для аннулирования чисел, разделенных запятой.
1_2_3 — допустимый
1_2_3,1_3 — недопустимый
Что у меня есть до сих пор: ([1-9 _]*[1-9]*[^,]
Ответ №1:
Вы можете использовать
^d (?:_d )*$
Смотрите демонстрацию регулярных выражений. Подробные сведения:
^
— начало строкиd
— одна или несколько цифр(?:
— начало группы без захвата:_
— символ подчеркиванияd
)*
— ноль или более вхождений последовательностей шаблонов в группе$
— конец строки.
Примечание: в случае, если используется JavaScript, его можно использовать d
для сопоставления с любой цифрой ASCII, и она равна [0-9]
. Если вам нужно сопоставить любое число без начальных нулей, все еще принимающих a 0
, вы можете заменить каждое d
из (?:0|[1-9]d*)
них конструкцией, которая соответствует a 0
или цифре, отличной 0
от той, за которой следует любой ноль или более цифр.