常用正则表达式
1、数字系列
- 只能输入数字
/^\d+$/
- 只能输入n个数字
/^\d{n}$/
- 至少输入n个以上的数字
/^\d{n,}$/
- 只能输入m到n个数字
/^\d{m,n}$/
2、字母系列
- 只能输入英文字母
/^[a-z]+$/i
- 只能由大写英文字母组成
/^[A-Z]+$/
3、组合系列
- 只能由英文和数字组成
/^[a-z0-9]+$/i
- 只能由英文、数字、下划线组成
/^\w+$/
- 只能由加号、减号、小数点、数字组成
/^\-?\+?\d./
4、补充
- input只能输入数字及一个小数点,保留六位小数
<label>
<input id="tranlimit_buyPrice" type="text" oninput="clearNoNum(this)" autocomplete="off"/>
<span id="tranLimit_buyAmount_inputCoin"></span>
</label>
function clearNoNum(obj) {
obj.value = obj.value.replace(/[\u4e00-\u9fa5]+/g, ""); //验证非汉字
obj.value = obj.value.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
obj.value = obj.value.replace(/^\./g, ""); //验证第一个字符是数字而不是
obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", "."); //只保留第一个小数点, 清除多余的
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d{6}).*$/, '$1$2.$3'); //只能输入6个小数
}
推荐用法:
<el-input *v-model*="num" *onkeyup*="this.value=this.value.replace(/[^\-?\+?\d.]/g,'')" />
欢迎朋友们前来补充!