在JavaScript中过滤“仅限空白”的字符串

时间:2009-12-17 13:09:40

标签: javascript string whitespace

我的JS代码中有一个收集用户输入的文本框。我想过滤垃圾输入,就像只包含空格的字符串一样。

在C#中,我将使用以下代码:

if (inputString.Trim() == "") Console.WriteLine("white junk");
else Console.WriteLine("Valid input");

你有什么建议,如何在JavaScript中做同样的事情?

4 个答案:

答案 0 :(得分:16)

字符串上的trim()方法确实存在于ECMAScript第五版标准中,并已由Mozilla(Firefox 3.5和相关浏览器)实现。

在其他浏览器赶上之前,您可以像这样修复它们:

if (!('trim' in String.prototype)) {
    String.prototype.trim= function() {
        return this.replace(/^\s+/, '').replace(/\s+$/, '');
    };
}

然后:

if (inputString.trim()==='')
    alert('white junk');

答案 1 :(得分:11)

使用正则表达式:

if (inputString.match(/^\s*$/)) { alert("not ok"); }

甚至更容易:

if (inputString.match(/\S/)) { alert("ok"); }

\ S表示'任何非空白字符'。

答案 2 :(得分:2)

或者,/^\s*$/.test(inputString)

答案 3 :(得分:1)

function trim (myString)
{
    return myString.replace(/^\s+/,'').replace(/\s+$/,'')
} 

像这样使用它: if(trim(myString)==“”)