在Javascript中识别字符串格式

时间:2011-07-17 04:26:29

标签: javascript string search string-formatting prompt

我正在尝试解决Javascript中的(简单)编程问题,我无法弄清楚如何使其正常工作。我有一个程序,首先使用提示符读取文本字符串。

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

“姓氏,名字,中间名”

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

我知道有一种简单的方法可以做到这一点,但我似乎无法在任何地方找到它。谢谢你的帮助!

3 个答案:

答案 0 :(得分:1)

使用这个正则表达式:

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

答案 1 :(得分:1)

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

// 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');
}

答案 2 :(得分:1)

我不会使用\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>