I typically use the following code in JavaScript to split a string by whitespace.
\"The quick brown fox jumps over the lazy dog.\".split(/\\s+/);
// [\"The\"
Instead of splitting at whitespace sequences, you could match any non-whitespace sequences:
" The quick brown fox jumps over the lazy dog. ".match(/\S+/g)
If you are more interested in the bits that are not whitespace, you can match the non-whitespace instead of splitting on whitespace.
" The quick brown fox jumps over the lazy dog. ".match(/\S+/g);
Note that the following returns null
:
" ".match(/\S+/g)
So the best pattern to learn is:
str.match(/\S+/g) || []
Not elegant as others code but very easy to understand:
countWords(valOf)
{
newArr[];
let str = valOf;
let arr = str.split(" ");
for (let index = 0; index < arr.length; index++)
{
const element = arr[index];
if(element)
{
newArr.push(element);
}
}
const NumberOfWords = newArr.length;
return NumberOfWords;
}
" The quick brown fox jumps over the lazy dog. ".trim().split(/\s+/);