2008-11-14 3 views
40

Мне нужен шаблон регулярного выражения, чтобы принимать только положительные целые числа. Он также может принимать один ноль.Шаблон регулярных выражений для числовых значений

Я не хочу принимать десятичные знаки, отрицательное число и цифры с ведущими нулями.

Любые предложения?

ответ

67
^(0|[1-9][0-9]*)$ 
+1

. Должен ли он включать дополнительную запятую, если формат позволяет это (например, 1 000 000)? – Ben 2008-11-14 16:06:53

13

"[1-9][0-9]*|0"

Я бы просто использовать "[0-9]+" для представления положительных целых чисел.

+1

если я использую grepl ("[0- 9] + "," 1111a ") в R, это дает мне TRUE – 2015-05-21 07:32:04

11

Это позволит десятичные числа (или целые числа), что делать не старт с нулевой:

^(([1-9]*)|(([1-9]*)\.([0-9]*)))$ 

Если вы хотите, чтобы номера, которые начинаются с нулем, вы можете сделать:

^(([0-9]*)|(([0-9]*)\.([0-9]*)))$ 
Смежные вопросы