/^\s*(\w[^\w]*){3}.*$/
Во-первых, разрешите вводить пробел. Затем сопоставьте букву / цифру, а затем 0 или более небуквенных / цифр 3 раза. Затем также сопоставьте любые другие найденные символы.
Будет соответствовать, только если есть хотя бы 3 буквы / цифры; между ними могут располагаться другие символы.
Что касается ограничения максимального количества символов, было бы гораздо проще сделать это с проверкой на .length
, а не пытаться встроить его в регулярное выражение.