For lowerCamelCase you need:
- A lowerCaseLetter
- at least one (lowerCaseLetter or UpperCaseLetter or numb3r)
So an approriate regex would be
[a-z][a-zA-Z0-9]+
Similarly for UpperCamelCase, you'll have [A-Z][a-zA-Z0-9]+
, and if you group those, you get
[a-zA-Z][a-zA-Z0-9]+
Edit: If you strictly require that for a word to be a camel case word, it heeds to have a "hump", where a hump is an uppercase letter or a number, you need:
- An upper or a lower case letter, followed by
- Other lower case letters (maybe none), followed by
- A hump, followed by
- Other lower case letters (maybe none),
- Maybe followed by another hump(s)
Then your regex is:
[a-zA-Z][a-z]*([A-Z0-9]+[a-z]*)+
Regex fiddle