javascript - 检查字段中的字母和数字字符

标签 javascript regex validation

我正在尝试编写 javascript 代码,以确保我表单中的字段的前 2 个字符为字母(美国),其余 8 个字符为数字。

总数必须是 10,如果其中任何一个不满足,我应该抛出一个警告框。

我现在正在检查数字,但我不知道如何在同一字段中结合检查字母和数字。

这是我检查数字的代码。

请帮帮我! sid 是我的字段名。

// only allow numbers to be entered
var checkOK = "0123456789";
var checkStr = document.forms[0].sid.value;
var allValid = true;
var allNum = "";

for (i = 0; i < checkStr.length; i++)
{
    ch = checkStr.charAt(i);
    for (j = 0; j < checkOK.length; j++)
        if (ch == checkOK.charAt(j))
            break;

    if (j == checkOK.length)
    {
        allValid = false;
        break;
        if (ch != ",")
            allNum += ch;
    }
    if (!allValid)
    {
        alert("Please enter only 8 numeric characters in the \"sid\" field.");
        return (false);
    }
}    

最佳答案

单个正则表达式将轻松执行此检查:

   /^[a-zA-Z]{2}\d{8}$/

/^ 匹配字符串的开头

[a-zA-Z]{2} 正好匹配 2 个字母字符

\d{8} 正好匹配8位数字

$/匹配字符串结尾

使用如下:

 /^[a-zA-Z]{2}\d{8}$/.test (str)   // Returns true or false

关于javascript - 检查字段中的字母和数字字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12816221/

相关文章:

javascript - 播放 s3 音频并在 React 组件中下载文件

javascript - Angular 模板在 http 请求后未更新

javascript - 正则表达式无法匹配 Angular 2 中的加号 ('+' ),但在测试人员中运行良好

javascript - Jquery Validation 使用远程检查用户名

ruby-on-rails - 载波 extension_white_list 不起作用

forms - symfony 2,表单集合,验证错误

javascript - 在 backbone.js 中通过 trigger() 传递的参数之上传递参数

javascript - 如何在 Chrome 开发工具中找到跟随脚本加载时间线?

ruby - 使用正则表达式提取字符串中的数字

php - 从查询字符串中删除某个变量