使用正则限制input框只能输入数字/英文/中文等等

前端技术 2023/09/06 PHP

常用HTML正则表达式

1.只能输入数字和英文的:

复制代码 代码如下:

<input onkeyup=\"value=value.replace(/[/W]/g,\'\') \"
onbeforepaste=\"clipboardData.setData(\'text\',clipboardData.getData(\'text\').replace(/[^/d]/g,\'\'))\"
ID=\"Text1\" NAME=\"Text1\">

2.只能输入数字的:
复制代码 代码如下:

<input onkeyup=\"value=value.replace(/[^/d]/g,\'\') \"
onbeforepaste=\"clipboardData.setData(\'text\',clipboardData.getData(\'text\').replace(/[^/d]/g,\'\'))\"
ID=\"Text2\" NAME=\"Text2\">

3.只能输入全角的:
复制代码 代码如下:

<input onkeyup=\"value=value.replace(/[^/uFF00-/uFFFF]/g,\'\')\"
onbeforepaste=\"clipboardData.setData(\'text\',clipboardData.getData(\'text\').replace(/[^/uFF00-/uFFFF]/g,\'\'))\"
ID=\"Text3\" NAME=\"Text3\">

4.只能输入汉字的:
复制代码 代码如下:

<input onkeyup=\"value=value.replace(/[^/u4E00-/u9FA5]/g,\'\')\"
onbeforepaste=\"clipboardData.setData(\'text\',clipboardData.getData(\'text\').replace(/[^/u4E00-/u9FA5]/g,\'\'))\"
ID=\"Text4\" NAME=\"Text4\">

5.邮件地址验证:
复制代码 代码如下:

var regu =
\"^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*[0-9a-zA-Z]+))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT)$\"
var re = new RegExp(regu);
if (s.search(re) != -1) {
return true;
} else {
window.alert (\"请输入有效合法的E-mail地址 !\")
return false;
}

6.身份证:
复制代码 代码如下:

\"^//d{17}(//d|x)$\"

7.17种正则表达式
复制代码 代码如下:

\"^//d+$\"//非负整数(正整数 + 0)
\"^[0-9]*[1-9][0-9]*$\"//正整数
\"^((-//d+)|(0+))$\"//非正整数(负整数 + 0)
\"^-[0-9]*[1-9][0-9]*$\"//负整数
\"^-?//d+$\"//整数
\"^//d+(//.//d+)?$\"//非负浮点数(正浮点数 + 0)
\"^(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*))$\"//正浮点数
\"^((-//d+(//.//d+)?)|(0+(//.0+)?))$\"//非正浮点数(负浮点数 + 0)
\"^(-(([0-9]+//.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*//.[0-9]+)|([0-9]*[1-9][0-9]*)))$\"//负浮点数
\"^(-?//d+)(//.//d+)?$\"//浮点数
\"^[A-Za-z]+$\"//由26个英文字母组成的字符串
\"^[A-Z]+$\"//由26个英文字母的大写组成的字符串
\"^[a-z]+$\"//由26个英文字母的小写组成的字符串
\"^[A-Za-z0-9]+$\"//由数字和26个英文字母组成的字符串
\"^//w+$\"//由数字、26个英文字母或者下划线组成的字符串
\"^[//w-]+(//.[//w-]+)*@[//w-]+(//.[//w-]+)+$\"//email地址
\"^[a-zA-z]+://(//w+(-//w+)*)(//.(//w+(-//w+)*))*(//?//S*)?$\"//url

=============================================
1.取消按钮按下时的虚线框
在input里添加属性值 hideFocus 或者 HideFocus=true

2.只读文本框内容
在input里添加属性值 readonly

3.防止退后清空的TEXT文档(可把style内容做做为类引用)
<INPUT style=behavior:url(#default#savehistory); type=text
id=oPersistInput>

4.ENTER键可以让光标移到下一个输入框
<input onkeydown=\"if(event.keyCode==13)event.keyCode=9\" >

5.只能为中文(有闪动)
复制代码 代码如下:

<input onkeyup=\"value=\"/value.replace(/[\" -~]/g,\'\')\"
onkeydown=\"if(event.keyCode==13)event.keyCode=9\">

6.只能为数字(有闪动)
复制代码 代码如下:

<input onkeyup=\"value=\"/value.replace(/[\"^/d]/g,\'\')
\"onbeforepaste=\"clipboardData.setData(\'text\',clipboardData.getData(\'text\').replace(/[^/d]/g,\'\'))\">

7.只能为数字(无闪动)
复制代码 代码如下:

<input ime-mode:disabled\"
onkeydown=\"if(event.keyCode==13)event.keyCode=9\" onKeypress=\"if
((event.keyCode<48 || event.keyCode>57)) event.returnValue=false\">

8.只能输入英文和数字(有闪动)
复制代码 代码如下:

<input onkeyup=\"value=\"/value.replace(/[/W]/g,\"\'\')\"
onbeforepaste=\"clipboardData.setData(\'text\',clipboardData.getData(\'text\').replace(/[^/d]/g,\'\'))\">

9.屏蔽输入法
复制代码 代码如下:

<input type=\"text\" name=\"url\" ime-mode:disabled\"
onkeydown=\"if(event.keyCode==13)event.keyCode=9\">

10. 只能输入 数字,小数点,减号(-) 字符(无闪动)
复制代码 代码如下:

<input onKeyPress=\"if (event.keyCode!=46 && event.keyCode!=45 &&
(event.keyCode<48 || event.keyCode>57)) event.returnValue=false\">


11. 只能输入两位小数,三位小数(有闪动)
复制代码 代码如下:

<input maxlength=9
onkeyup=\"if(value.match(/^/d{3}$/))value=\"/value.replace(value,parseInt(value/10))\"
;value=\"/value.replace(//./d*/./g,\'.\"\')\" onKeyPress=\"if((event.keyCode<48
|| event.keyCode>57) && event.keyCode!=46 && event.keyCode!=45 ||
value.match(/^/d{3}$/) || //./d{3}$/.test(value))
{event.returnValue=false}\" id=text_kfxe name=text_kfxe>

12、只能输入数字与逗号

<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<HTML>
 <HEAD>
 <TITLE> New Document </TITLE>
 <META NAME=\"Generator\" CONTENT=\"EditPlus\">
 <META NAME=\"Author\" CONTENT=\"\">
 <META NAME=\"Keywords\" CONTENT=\"\">
 <META NAME=\"Description\" CONTENT=\"\">
 </HEAD>
 <BODY>
 <input onkeyup=\'check(this)\'/>
 </BODY>
 <script>
function check(obj){	
	var sreg = /^-+.*/g;
	var zero = /^0[1-9]+\\.*\\d*/g;
	var val = obj.value;
	var plus = \'\';
	if(sreg.test(val)){
		val = val.replace(/-+/g,\'\');		
		plus = \'-\';		
	}
	val = val.replace(/\\s+/g,\'\');	
	if(/^\\.+.*$/.test(val)){
		val = \'\';
	}
	val = val.replace(/[^\\d\\.]/,\'\');
	val = val.replace(/(^\\d+\\.{1})(\\d*).*/g,\'$1$2\');
	val = val.replace(/(^\\d+\\.\\d{3})\\d*/g,\'$1\');
	val = val.replace(/^[0]*(0{1})([1-9]*)(.*)/g,\'$1$2$3\');		
	if(zero.test(val)){
		val = val.replace(/0([1-9]+)(.*)$/,\'$1$2\');
	}
	
	obj.value = plus+val;
}
 </script>
</HTML>

13、替换内容中的非数字与中英文以外的字符

function renumdou(str){
var regexp = /[^\\d,,]]*/g;
newstr=str.replace(regexp,\"\");
return newstr
}

本文地址:https://www.stayed.cn/item/15006

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。