Убедитесь, что имя пользователя содержит буквы и цифры

Я хочу проверить, что у пользователя есть буквы и цифры Пример:

"педро123" -> правда "Питер" -> ложь

У меня есть это:

function isUserNameValid(username) {
  const res = /(?!.*[\.\-\_]{2,})^[a-zA-Z0-9]{3,24}$/.exec(username);
  const valid = !!res;
  return valid;
}
Калькулятор CGPA 12 для семестра
Калькулятор CGPA 12 для семестра
Чтобы запустить этот код и рассчитать CGPA, необходимо сохранить код как HTML-файл, а затем открыть его в веб-браузере. Для этого выполните следующие...
Как собрать/развернуть часть вашего приложения Angular
Как собрать/развернуть часть вашего приложения Angular
Вам когда-нибудь требовалось собрать/развернуть только часть вашего приложения Angular или, возможно, скрыть некоторые маршруты в определенных средах?
Оптимизация React Context шаг за шагом в 4 примерах
Оптимизация React Context шаг за шагом в 4 примерах
При использовании компонентов React в сочетании с Context вы можете оптимизировать рендеринг, обернув ваш компонент React в React.memo сразу после...
Интервьюер: Почему '[] instanceof Object' возвращает "true"?
Интервьюер: Почему '[] instanceof Object' возвращает "true"?
Все мы знаем, что [] instanceof Array возвращает true, но почему [] instanceof Object тоже возвращает true?
Абстрактное синтаксическое дерево (AST) и как оно работает с ReactJS
Абстрактное синтаксическое дерево (AST) и как оно работает с ReactJS
Абстрактное синтаксическое дерево (AST) - это древовидная структура данных, которая представляет структуру и иерархию исходного кода на языке...
2
0
53
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Вы можете использовать несколько регулярных выражений:

function isUserNameValid(username) {
  const hasLetter = /[a-zA-Z]/.test(username);
  const hasNumber = /[0-9]/.test(username);
  const isValid = hasLetter && hasNumber;
  return isValid;
}

console.info(isUserNameValid("pedro123"))
console.info(isUserNameValid("peter"))

Вы уже были там. Используйте .test вместо .exec Так:

function isUserNameValid(username) {
   return /(?!.*[\.\-\_]{2,})^[a-zA-Z0-9]{3,24}$/.test(username);
}

Кстати, здесь также указано, что имя пользователя должно быть длиной от 3 до 24 символов.

Пытаться:

const isUserNameValid = function (userName) {
  let regExp = /^(?=.*[a-zA-Z])(?=.*[0-9])/;
  return regExp.test(userName);
};

Другие вопросы по теме