Освоение проверки чисел в JavaScript с использованием регулярных выражений: подробное руководство

Когда дело доходит до обработки и проверки чисел в JavaScript, регулярные выражения (регулярные выражения) являются мощным инструментом в вашем арсенале. В этой статье блога мы рассмотрим ряд методов, использующих разговорный язык, и приведем примеры кода, которые помогут вам освоить проверку чисел в JavaScript.

Метод 1: базовая проверка номера

Давайте начнем с базового подхода к проверке того, содержит ли строка допустимое число. Мы можем использовать метод test()объекта RegExpв JavaScript, чтобы проверить, соответствует ли строка заданному шаблону. Вот пример:

const numberPattern = /^\d+$/;
const input = "12345";
if (numberPattern.test(input)) {
  console.log("Valid number!");
} else {
  console.log("Invalid number!");
}

Метод 2: проверка десятичных чисел

Чтобы проверить десятичные числа, мы можем немного изменить шаблон регулярного выражения. В следующем примере показано, как проверить строку, представляющую десятичное число:

const decimalPattern = /^\d+(\.\d+)?$/;
const input = "3.14";
if (decimalPattern.test(input)) {
  console.log("Valid decimal number!");
} else {
  console.log("Invalid decimal number!");
}

Метод 3: проверка отрицательного числа

Если вам также необходимо проверять отрицательные числа, вы можете обновить шаблон регулярного выражения, включив в него необязательный знак минус. Вот пример:

const negativeNumberPattern = /^-?\d+(\.\d+)?$/;
const input = "-42.75";
if (negativeNumberPattern.test(input)) {
  console.log("Valid negative number!");
} else {
  console.log("Invalid negative number!");
}

Метод 4. Проверка научной записи

Научные обозначения обычно используются для обозначения больших или малых чисел. Чтобы проверить числа, записанные в экспоненциальной записи, мы можем использовать возможности регулярных выражений. Взгляните на следующий пример:

const scientificPattern = /^[+-]?\d+(\.\d+)?([eE][+-]?\d+)?$/;
const input = "1.23e-4";
if (scientificPattern.test(input)) {
  console.log("Valid scientific notation number!");
} else {
  console.log("Invalid scientific notation number!");
}

Метод 5: проверка диапазона

В некоторых случаях вам может потребоваться проверить, попадает ли число в определенный диапазон. Хотя само по себе регулярное выражение может быть не лучшим решением для этой проблемы, вы можете объединить его с дополнительной логикой JavaScript. Вот пример, демонстрирующий проверку числа в диапазоне:

const numberRangePattern = /^(0|[1-9]\d{0,2})$/;
const input = "42";
if (numberRangePattern.test(input) && parseInt(input) >= 1 && parseInt(input) <= 100) {
  console.log("Valid number within range!");
} else {
  console.log("Invalid number or out of range!");
}

В этой статье мы рассмотрели различные методы проверки чисел в JavaScript с использованием регулярных выражений. Используя возможности регулярных выражений, вы можете эффективно обрабатывать сценарии проверки чисел в своих проектах JavaScript. Будь то базовая проверка чисел, десятичных чисел, отрицательных чисел, экспоненциальная запись или проверка диапазона, регулярное выражение обеспечивает гибкий подход.

Поняв и применив эти методы, вы будете хорошо подготовлены к эффективной проверке чисел в своем коде JavaScript.