正则expression式模式的数值

我需要一个正则expression式模式来接受正整数。 它也可以接受一个零。

我不想接受小数,负数和前导零的数字。

有什么build议么?

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

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

我只是用“ [0-9]+ ”来表示正整数。

这将允许以零开始的十进制数字(或整数):

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

如果你想允许从零开始的数字,你可以这样做:

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