识别Javascript中的字符串格式

Identifying string format in Javascript

本文关键字:字符串 格式 Javascript 识别      更新时间:2023-09-26

我正试图解决一个(简单的)Javascript编程问题,我不知道如何让它工作。我有一个程序,它从使用prompt读取文本字符串开始。

程序输出"有效名称"或"无效名称",取决于输入名称是否符合所需格式,即:

"姓,名,中间首字母"

,其中两个名称都不能超过15个字符。

我知道有一种简单的方法可以做到这一点,但是我似乎到处都找不到。谢谢你的帮助!

我不会使用'w,因为它包含_等字符和九位数字。考虑以下测试中的正则表达式:

<script>
    if ("Nami, Guilherme, P".match(/^[A-Z][a-z]{1,14}, [A-Z][a-z]{1,14}, [A-Z]'.?$/)) {
        alert("Valid");
    }
    else {
        alert("Invalid");
    }
</script>

使用正则表达式:

/^'w{0,15}, 'w{0,15}, 'w{0,15}'.?$/.test(name)

这应该可以工作(在我的测试中有效):

// assuming there are no commas in fields
var string = "last name, first name, middle initial", 
string_array = string.split(', '), 
length = string_array.length;
for (i = 0; i < length; i++) {
    // changing string to 'blah, firrrrrsssttt nammme, bbbbb' outputs the alert message
    if (string_array[i].length > 15) alert('None of these can be more than 15 characters long. ' + string_array[i] + ' is too long');
}