Javascript 仅检查字母的正则表达式
我试图实现仅对字母表的形式验证,但此正则表达式似乎不起作用Javascript 仅检查字母的正则表达式,javascript,html,regex,forms,validation,Javascript,Html,Regex,Forms,Validation,我试图实现仅对字母表的形式验证,但此正则表达式似乎不起作用 function check() { var reg="/^[a-zA-Z]*$/"; var x = document.forms['frm'].name.value; var y= document.forms['frm'].email.value; if( x === ""){ alert('Name field cant be empty'); $("#nameone
function check() {
var reg="/^[a-zA-Z]*$/";
var x = document.forms['frm'].name.value;
var y= document.forms['frm'].email.value;
if( x === ""){
alert('Name field cant be empty');
$("#nameone").focus();
return false;
}
else if (!reg.match(x)){
alert('NAME must contain alphabets only');
return false;
}
else if( y === ""){
alert('Email field cant be empty');
$("#emailone").focus();
return false;
}
else {
return true;
}
}
这是我的表格,我已经添加了详细信息,输入字段
您可以使用
string.match("^[a-zA-Z]+$$");
如果字符串仅包含字母,则为true,否则为false,而不是
var reg = "/^[a-zA-Z]*$/"; // produces a **string**
您应该省略周围的引号:
var reg = /^[a-zA-Z]*$/; // produces a **Regex object**
第二种使用javascript内联正则表达式语法,斜杠用作分隔符
此外,您可以使用简单的.test()
函数检查字符串是否符合正则表达式
演示:
var reg=/^[a-zA-Z]*$/;
控制台日志(注册测试(“ABcd”);
控制台日志(注册测试(“123”)代码>在这种情况下,您的代码不起作用,因为您的正则表达式在以下行中设置为字符串:
var reg=“/^[a-zA-Z]*$/”
尝试使用reg.test()
而不是reg.match()
这似乎对我不起作用<代码>var reg=“/^[a-zA-Z]*$/”代码>这将创建一个字符串而不是正则表达式,您需要执行var reg=/^[a-zA-Z]*$/
然后使用x.match(reg)
您的表单中不应该有一些实际的项目吗?或者这只是一个显示所用属性的简化版本?显然,这是一个简化版本,让我添加细节。我不认为“performatic”是一个词;你的意思是“高效”吗?我的意思是“高效”。方法test只检查字符串match check,将字符串拆分以返回匹配的值。您可以在这里查看一个我在任何字典中都找不到定义为“performatic”的基准(wiktionary未能定义它),并且“”(不要与“effect”混淆)似乎与您的定义所指出的优势相匹配:不浪费资源做无用或过于复杂的事情。请注意,我不是以英语为母语的人,所以我很可能会感到困惑。或者它可能是一个当地的习语,我想应该避免使用。
var reg = /^[a-zA-Z]*$/; // produces a **Regex object**