I have a regex
/^([a-zA-Z0-9]+)$/
this just allows only alphanumerics but also if I insert only number(s) or only
Why not first apply the whole test, and then add individual tests for characters and numbers? Anyway, if you want to do it all in one regexp, use positive lookahead:
/^(?=.*[0-9])(?=.*[a-zA-Z])([a-zA-Z0-9]+)$/
If you need the digit to be at the end of any word, this worked for me:
/\b([a-zA-Z]+[0-9]+)\b/g
And an idea with a negative check.
/^(?!\d*$|[a-z]*$)[a-z\d]+$/i
^(?!
at start look ahead if string does not\d*$
contain only digits |
or[a-z]*$
contain only letters[a-z\d]+$
matches one or more letters or digits until $
end.Have a look at this regex101 demo
(the i flag turns on caseless matching: a-z
matches a-zA-Z
)