Когда я проверил ответы, я увидел, что пространство разрешено. Поэтому я улучшаю регулярное выражение для других, которые будут читать этот вопрос:
Вам нужно сделать так:
if (!$('#uname').val().match(/^[a-z0-9_-]{3,15}$/)) {
alert("Please, use standard characters.");
}
Описание регулярного выражения:
^ - начало строки
[a-z0-9_-] - сопоставить символы и символы в списке, a-z, 0-9,
подчеркивание, дефис
{3,15} - длина не менее 3 символов и максимальная длина 15
$ - конец строки