Key point for the first two validations: Think lookaheads like regex inside validators.
First One:
^(?=[a-zA-Z]+\d)[a-zA-Z0-9]{5,8}$
* Ensure that the variable contains a number which comes after at least one letter.
Second One:
^(?=[a-zA-Z]*\d)(?=(\d*[a-zA-Z]){2})[a-zA-Z0-9]{4,10}$
* Ensure that the variable contains a number which may have letter(s) before it.
* Ensure that the variable contains two letters (either side by side or separated by a number).
Third One:
^[-a-zA-Z ]{3,50}$