"Must contain only letters and numbers, and at least one letter" equivalent "must contain a letter surrounded by numbers or letters:
/^[0-9a-zA-Z]*[a-zA-Z][0-9a-zA-Z]*$/
I would like to add that this answer shows a way that you can think of a problem, so regexp is easier to write. This should not be the best solution to the problem. I just took what you had and gave it a push in the right direction.
( ZER0, Tomalak OGHaza ):
, , . , , ( !):
/^[0-9]*[a-zA-Z][0-9a-zA-Z]*$/ - , ,/^[0-9a-zA-Z]*[a-zA-Z][0-9]*$/ - ,
, , :
, , , :
, , , ( )
, , , .