场景复现
最近在项目中碰上了限制input输入框的输入内容的需求,于是查阅了资料,总结以下这些非常实用的JavaScript正则表达式。
需要的小伙伴们可以收藏,方便日后查看。
本文所用的组件以
ant design vue
的a-input
组件为例:(所有input输入框都适用)
干货分享
1.限制input输入框只能输入大小写字母、数字、下划线的正则表达式:
<a-input type="text" onkeyup="=(/[^\w_]/g,'');">
2.限制input输入框只能输入小写字母、数字、下划线的正则表达式:
<a-input type="text" onkeyup="=(/[^a-z0-9_]/g,'');">
3.限制input输入框只能输入数字和点的正则表达式:
<a-input type="text" onkeyup="value=(/[^\d.]/g,'')">
4.限制input输入框只能输入中文的正则表达式:
<a-input type="text" onkeyup="=(/[^\u4e00-\u9fa5]/g,'')">
5.限制input输入框只能输入数字的正则表达式:
<a-input type="text" onkeyup="=(/\D/g,'')"/>
6.限制input输入框只能输入英文的正则表达式:
<a-input type="text" onkeyup="=(/[^a-zA-Z]/g,'')"/>
7.限制input输入框只能输入中文、数字、英文的正则表达式:
<a-input onkeyup="value=(/[^\w\u4E00-\u9FA5]/g, '')"/>
8.限制input输入框只能输入数字和字母的正则表达式:
<a-input onKeyUp="value=(/[\W]/g,'')"/>
9.限制input输入框除了英文的标点符号以外,其他的都可以。中文,英文字母,数字,中文标点的正则表达式:
<a-input type="text" onkeyup="=(/^[^!@#$%^&*()-=+]/g,'')"/>
10.限制input输入框 只能输入数字代码(小数点也不能输入) 的正则表达式:
<a-input onkeyup="=(/\D/g,'')" onafterpaste="=(/\D/g,'')"/>
11.限制input输入框只能输入数字,能输小数点的正则表达式:
<a-input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')"/>
<a-input onchange="if(/\D/.test()){alert('只能输入数字');='';}"/>
或者
<a-input type="text"
onkeypress="if(!(/^[\+\-]?\d*?\.?\d*?$/))=this.t_value;ase this.t_value=;if((/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value="
onkeyup="if(!(/^[\+\-]?\d*?\.?\d*?$/))=this.t_value;ase this.t_value=;if((/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value="
onblur="if(!(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))=this.o_value;ase{if((/^\.\d+$/))=0+;if((/^\.$/))=0;this.o_value=}"/>
12.限制input输入框只能输入字母和汉字的正则表达式:
<a-input onkeyup="value=(/[\d]/g,'') "onbeforepaste="('text',('text').replace(/[\d]/g,''))" maxlength=10 name="Numbers"/>
13.限制input输入框只能输入英文字母和数字,不能输入中文的正则表达式:
<a-input onkeyup="value=(/[^\w\.\/]/ig,'')"/>
14.限制input输入框只能输入数字和英文的正则表达式:
<a-input onKeyUp="value=(/[^\d|chun]/g,'')">
15.限制input输入框小数点后只能有最多两位(数字、中文都可输入),不能输入字母和运算符号的正则表达式:
<a-input onKeyPress="if((<48 || >57) && !=46 || /\.\d\d$/.test(value))=false">
16.限制input输入框小数点后只能有最多两位(数字、字母、中文都可输入),==可以输入运算符号:==的正则表达式:
<a-input onkeyup="=(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">
17.不可输入中文
<a-input onkeyup="=(/[\u4E00-\u9FA5]/g,'')">
18.不可输入空格
<a-input onkeyup="onkeyup="value = (/\s+/g, '')">