正则表达式最小字数

时间:2014-11-27 14:11:41

标签: regex

我应该使用什么正则表达式来计算最少的字数?这是一个约会网站,用户必须用至少50个单词描述自己。因此,只要它有超过50个单词,就可以允许所有标点符号,新行,问号,数字以及用户输入的任何内容。

我有这个(\b[A-Za-z0-9 '-_]+\b.*){50,},但它不允许你做新的行字符

由于

3 个答案:

答案 0 :(得分:2)

如果您说的是网站,则不需要正则表达式。虽然它没有标记为,但我认为您会发现它有用。 你能做的是

var elem = document.getElementById("id of the text input element here");
if(elem.value.split(" ").length < 50) {
   alert("Minimum 50 words please!!");
}

答案 1 :(得分:1)

要包含换行符,请使用此正则表达式:

(\b[A-Za-z0-9\s'_-]+\b){50,} 

答案 2 :(得分:0)

@DRC您的解决方案无法解决用户输入50个空格的问题

我调整了你的解决方案并让它为我工作

function min50Words(source, arguments)
    {
        if (arguments.Value.replace(/\s+/g, ' ').split(" ").length < 50) {
            arguments.IsValid = false;
        } else {
            arguments.IsValid = true;
        }
    }

这一位

.replace(/\s+/g, ' ').split(" ").length < 50

会将所有空格折叠为单个空格

感谢所有帮助人员