В обширной сфере регулярных выражений часто возникает необходимость проверки и извлечения определенных шаблонов из текста. Одним из общих требований является принятие любого числового значения, будь то целое, десятичное или даже отрицательное число. В этой статье блога мы рассмотрим несколько методов выполнения этой задачи, используя разговорный язык и попутно предоставляя примеры кода. Давайте углубимся и освоим искусство регулярных выражений!
- Базовая числовая проверка.
Для начала давайте создадим регулярное выражение, которое принимает любое положительное целое число. Мы можем добиться этого, используя следующий шаблон:
^\d+$
Объяснение:
- Символы
^
и$
обозначают начало и конец входной строки соответственно. \d
соответствует любому цифровому символу.+
гарантирует наличие одной или нескольких цифр.
- Проверка десятичных чисел:
Чтобы расширить наше регулярное выражение и принять десятичные числа, мы можем изменить предыдущий шаблон следующим образом:
^-?\d+(\.\d+)?$
Объяснение:
-?
допускает необязательный отрицательный знак в начале числа.(\.\d+)?
делает десятичную часть необязательной, используя?
, а\.\d+
соответствует десятичной запятой, за которой следует одна или несколько цифр.
(\.\d+)?
- Поддержка научной записи:
Если мы хотим обрабатывать числа в научной записи (например, 1.23e-4), мы можем дополнительно улучшить наше регулярное выражение:
^-?\d+(\.\d+)?([eE]-?\d+)?$
Объяснение:
([eE]-?\d+)?
делает часть научной записи необязательной, используя?
. Он соответствует букве «e» или «E», за которой следует необязательный отрицательный знак и одна или несколько цифр.
- Разрешение использования разделителей тысяч.
В некоторых случаях числовые значения могут включать разделители тысяч (например, 1000 или 10000,50). Чтобы адаптировать этот формат, мы можем изменить регулярное выражение следующим образом:
^-?\d{1,3}(,\d{3})*(\.\d+)?([eE]-?\d+)?$
Объяснение:
\d{1,3}(,\d{3})*
соответствует одной-трем цифрам, за которыми следует ноль или более вхождений запятой и трех цифр, что позволяет использовать разделители тысяч.
Имея в своем наборе инструментов эти шаблоны регулярных выражений, вы можете с уверенностью принимать любое числовое значение, включая десятичные и отрицательные числа. Не забудьте адаптировать шаблоны к вашим конкретным случаям использования, поскольку требования могут различаться. Регулярные выражения – мощный инструмент для сопоставления и проверки шаблонов. Их понимание открывает мир возможностей обработки и манипулирования данными.
Так что вперед, экспериментируйте с этими шаблонами регулярных выражений и воспользуйтесь гибкостью, которую они предлагают при обработке числовых значений!