【JavaScript基础语法】正则表达式——限制input输入框只能输入字母、数字、字符等

时间:2025-03-20 07:29:05

场景复现

最近在项目中碰上了限制input输入框的输入内容的需求,于是查阅了资料,总结以下这些非常实用的JavaScript正则表达式。
需要的小伙伴们可以收藏,方便日后查看。

本文所用的组件以ant design vuea-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, '')">