Reputation: 398
Building an regular expression that will reject an input string which contain spaces.
I have a following expression, but its not working as well;
^[a-zA-Z0-9!@#*()+{}[\\];:,|\/\\\\_\S-]+$
Valid case
String123/test //string without space
Invalid case
String123/ test // contains space in between string
String 123/test // contains space in between string
String123/test // contains leading\trailing space
i.e; I have to white list strings which does not contain any spaces.
Upvotes: 11
Views: 31910
Reputation: 7091
You may use \S
\S
matches any non white space character
Regex
/^\S+$/
Example
function CheckValid(str){
re = /^\S+$/
return re.test(str)
}
console.log(CheckValid("sasa sasa"))
console.log(CheckValid("sasa/sasa"))
console.log(CheckValid("sas&2a/sasa"))
Upvotes: 19
Reputation: 91
I suppose that you'll be using .test method on regex, /\s/g
this one should do the job, it will return true if there's any space in the string.
ex: /\s/g.test("String123/test")
this will return false which means that the string is valid
/\s/g.test("String123 /test)
this will return true which means that the string is not valid
Upvotes: 1