正则表达式要求只能输入正整数(多位)

正则表达式要求只能输入正整数(多位)?第一位不可以是0.求教怎么写?
input type="text" name="operUser.id" onkeyup="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"

onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
class="form-control " placeholder="请输入非负整数">我是这样弄得 但是长按0,
0依然可以输入

多位的时候还需要去掉开头的0

 <input type="text" name="operUser.id" onkeyup="if (this.value.length == 1) { this.value = this.value.replace(/[^1-9]/g, '') } else { this.value = this.value.replace(/\D/g, '').replace(/^0+/g, '') }"
       onafterpaste="if (this.value.length == 1) { this.value = this.value.replace(/[^1-9]/g, '') } else { this.value = this.value.replace(/^0+/g, '') }"
       class="form-control " placeholder="请输入非负整数">
^[1-9]\d*|0$

^[1-9]\d*$
或者
^[1-9][0-9]*$

onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
placeholder="请输入非负整数">
我是这样整的 但是长按0的话 0依然可以输入

onafterpaste="if(this.value.length==1){this.value=this.value.replace(/[^1-9]/g,'')}else{this.value=this.value.replace(/\D/g,'')}"
class="form-control " placeholder="请输入非负整数"> 我是这样整的 但是长按0的话 0依然可以输入

^[1-9][0-9]*$