Swift: Validar entrada de nome de usuário

Trabalhando em um aplicativo Swift, tenho um formulário preenchido pelo usuário e gostaria que o usuário selecionasse seu próprio nome de usuário. As únicas restrições que eu quero no nome de usuário são:

Nenhum caractere especial (por exemplo, @, #, $,%, &, *, (,), ^, <,>,!, ±)Somente letras, sublinhados e números são permitidosO comprimento deve ter no máximo 18 caracteres e no mínimo 7 caracteres

Onde posso encontrar uma função que valide uma sequência de entrada (parâmetro de função) e retorne verdadeiro ou falso com base nos critérios acima? Não sou muito versado em expressões regulares.

questionAnswers(5)

yourAnswerToTheQuestion