Javascript 字母+数值的正则表达式
我正在编写一个Java脚本,为此我需要正则表达式来检查文本框中输入的文本是否应该是字母和数值的组合 我尝试了java脚本的NaN函数,但字符串的最小大小和最大长度应为4,并以字母表作为第一个元素,其余3个元素应为数字 例如:A123、D456、a564的正则表达式,而不是AS23、1234、HJI1的正则表达式 请推荐我 代码如下:Javascript 字母+数值的正则表达式,javascript,html,regex,Javascript,Html,Regex,我正在编写一个Java脚本,为此我需要正则表达式来检查文本框中输入的文本是否应该是字母和数值的组合 我尝试了java脚本的NaN函数,但字符串的最小大小和最大长度应为4,并以字母表作为第一个元素,其余3个元素应为数字 例如:A123、D456、a564的正则表达式,而不是AS23、1234、HJI1的正则表达式 请推荐我 代码如下: <script type="text/javascript"> var textcode = document.form1.code.value;
<script type="text/javascript">
var textcode = document.form1.code.value;
function fourdigitcheck(){
var textcode = document.form1.code.value;
alert("textcode:"+textcode);
var vmatch = /^[a-zA-Z]\d{3}$/.test("textcode");
alert("match:"+vmatch);
}
</script>
<form name="form1">
Enter your Number <input type="text" name="code" id="code" onblur="fourdigitcheck()" />
</form>
将准确地告诉您需要知道的内容。将准确地告诉您需要知道的内容。Regexp:
var match = /^[a-zA-Z][0-9]{3}$/.test("A456"); // match is true
var match = /^[a-zA-Z][0-9]{3}$/.test("AB456"); // match is false
-有一个在线测试工具,您可以检查它是否正常工作。Regexp:
var match = /^[a-zA-Z][0-9]{3}$/.test("A456"); // match is true
var match = /^[a-zA-Z][0-9]{3}$/.test("AB456"); // match is false
-有一个在线测试工具,您可以检查它是否正常工作。/[A-Z][0-9]{3}//[A-Z][0-9]{3}/
^[A-Z]{1}\d{3}$
或更短
^[A-Z]\d{3}$
说明:
// ^[A-Z]\d{3}$
//
// Assert position at the start of the string or after a line break character «^»
// Match a single character in the range between "A" and "Z" «[A-Z]»
// Match a single digit 0..9 «\d{3}»
// Exactly 3 times «{3}»
// Assert position at the end of the string or before a line break character «$»
测试:
或更短
^[A-Z]\d{3}$
说明:
// ^[A-Z]\d{3}$
//
// Assert position at the start of the string or after a line break character «^»
// Match a single character in the range between "A" and "Z" «[A-Z]»
// Match a single digit 0..9 «\d{3}»
// Exactly 3 times «{3}»
// Assert position at the end of the string or before a line break character «$»
测试:
如果同时需要大写和小写字母,则/^[A-Za-z][0-9]{3}$/
否则,如果字母是大写的,那么/^[A-Z][0-9]{3}$/如果同时需要大写和小写字母,那么/^[A-Za-Z][0-9]{3}$/ 如果字母为大写,则/^[A-Z][0-9]{3}$/最小示例:
<html>
<head>
</head>
<body>
<form id="form" name="form" action="#">
<input type="text" onkeyup=
"document.getElementById('s').innerHTML=this.value.match(/^[a-z]\d\d\d$/i)?'Good':'Fail'"
/>
<span id="s">?</span>
</form>
</html>
最简单的例子:
<html>
<head>
</head>
<body>
<form id="form" name="form" action="#">
<input type="text" onkeyup=
"document.getElementById('s').innerHTML=this.value.match(/^[a-z]\d\d\d$/i)?'Good':'Fail'"
/>
<span id="s">?</span>
</form>
</html>
他没有说第一个字母是大写,尽管所有的例子都是:/^[a-z]\d{3}$/i@Rahul亲爱的,正则表达式是正确的-发布你用来测试它的代码。@Amaraghosh:他没有这么说。他贴的所有例子都是大写。他没有说第一个字母是大写,尽管所有的例子都是:/^[a-z]\d{3}$/i@Rahul亲爱的,正则表达式是正确的-发布你用来测试它的代码。@Amaraghosh:他没有这么说。他发布的所有示例都是大写的。特定于Javascript的:修改后,第6行:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;必须更改:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;更改:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;to:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;它会很好的工作。看:@ruber:谢谢亲爱的,它真的很管用@Floyddotnet:太棒了,伙计,你的剧本真的很好…非常感谢你给我这么好的主意!!!特定于Javascript:修改后,第6行:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;必须更改:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;更改:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;to:var vmatch=/^[a-zA-Z]\d{3}$/.testtextcode;它会很好的工作。看:@ruber:谢谢亲爱的,它真的很管用@Floyddotnet:太棒了,伙计,你的剧本真的很好…非常感谢你给我这么好的主意!!!