2013-03-12 3 views
2

Я пытаюсь создать регулярное выражение, чтобы принятьСоздать регулярное выражение для

целое

или

целое число, то подчеркивания тогда другое число

123_45

Вот что у меня есть

/^[0-9]+_*[0-9]*$/ 

Как сделать _*[0-9]* (вторая часть) необязательно

+0

'_ *' не соответствует ни одному, ни одному ИЛИ БОЛЬШЕ подчеркивает '_?' Это или нет –

ответ

6

использовать это регулярное выражение ^\d+(_\d+)?$

2

Вы пробовали

/^[0-9]+(_[0-9]+)?$/ 

Дополнительный синтаксис ()? взят из http://www.regular-expressions.info/optional.html

Но, как указано в принятом ответе \d может быть использован как сокращение для [0-9] так что это может быть

/^\d+(_\d+)?$/ 
+2

ваше соответствие регулярному выражению '123_' –

+0

Отлично! оцените ссылку. –

+0

Обновлено во избежание соответствия 123_, а также 123___456 –

0

проверить это выражение,

/^ [ 0-9] + (_ ([0-9]) +)? $/

не будет m atch 123_

+0

оно будет соответствовать 1_1_1_1_1_1_1_1_1 –

Смежные вопросы