开发者

Filtering "whitespace-only" strings in JavaScript

开发者 https://www.devze.com 2022-12-14 02:14 出处:网络
I have a textbox collecting user input in my JS code. I would like to filter junk input, like strings that contain whitespaces only.

I have a textbox collecting user input in my JS code. I would like to filter junk input, like strings that contain whitespaces only.

In C#, I would use the following code:

if (inputString.Trim() == "") Console.WriteLine("white junk");
else开发者_如何学运维 Console.WriteLine("Valid input");

Do you have any recommendation, how to do the same in JavaScript?


The trim() method on strings does exist in the ECMAScript Fifth Edition standard and has been implemented by Mozilla (Firefox 3.5 and related browsers).

Until the other browsers catch up, you can fix them up like this:

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

then:

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


Use a regular expression:

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

or even easier:

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

The \S means 'any non white space character'.


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


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

use it like this: if (trim(myString) == "")

0

精彩评论

暂无评论...
验证码 换一张
取 消