I’ve given you the information required to solve the issues you’ve mentioned so far, I will send you a private message to explain further to avoid cluttering this thread
Looking at some of the top answers, I feel like I over-engineered mine, using regex and limit checks. I saw it mention alpha-numeric and then alphanumeric with some punctuation, so I just assumed they should be validated.