Try though I may, can't figure out how to use regex in javascript to get an array of words (assuming all words are capitalized). For example:
Given this: NowIsAGoodTime
How can you use regex to get: ['Now','Is','A','Good','Time']
Thanks Very Much!!
Try though I may, can't figure out how to use regex in javascript to get an array of words (assuming all words are capitalized). For example:
Given this: NowIsAGoodTime
How can you use regex to get: ['Now','Is','A','Good','Time']
Thanks Very Much!!
Share Improve this question asked Nov 11, 2011 at 13:27 user815460user815460 1,1433 gold badges11 silver badges17 bronze badges2 Answers
Reset to default 12'NowIsAGoodTime'.match(/[A-Z][a-z]*/g)
[A-Z]
, [a-z]
and [0-9]
are character sets defined as ranges. They could be [b-xï]
, for instance (from "b" to "x" plus "ï").
String.prototype.match
always returns an array or null
if no match at all.
Finally, the g
regexp flag stands for "global match". It means, it will try to match the same pattern on subsequent string parts. By default (with no g
flag), it will be satisfied with the first match.
With a globally matching regexp, match
returns an array of matching substrings.
With single match regexps, it would return the substring matched to the whole pattern, followed by the pattern groups matches. E. g.:
'Hello'.match(/el(lo)/) // [ 'ello', 'lo' ]
See more on Regexp
.
This regex will break it up in desired parts:
([A-Z][a-z]*)