Regex, который принимает числа с плавающей запятой и знак минус (-)

Я хочу регулярное выражение, которое будет принимать только числа с плавающей запятой от 0 до 9 и знак минус.

Пожалуйста, помогите.

Ответ 1

^[-+]?[0-9]*\.?[0-9]+$

  • ^ - начало строки
  • [-+]? - индикатор индикатора 0 или 1
  • [0-9]* - 0 или более целых чисел
  • \. - символ . (. используется в регулярном выражении для обозначения "любой символ" )
  • [0-9]+ - 1 или более целых чисел
  • $ - конец строки

Если вместо запятой используется десятичный разделитель, используйте , вместо \.

Если вы используете оба варианта, вы можете использовать [.,]

Ответ 2

Попробуйте ^[-+]?[0-9]*[.,]?[0-9]+$.

Это регулярное выражение будет соответствовать необязательному знаку, за которым следуют ноль или более цифр, за которым следует точка и одна или несколько цифр (число с плавающей запятой с необязательной целой частью) или сопровождаемое одной или несколькими цифрами ( целое число).

Источник: http://www.regular-expressions.info/floatingpoint.html - изменен для работы с запятыми как разделитель десятичной дроби

Ответ 3

Нужна помощь по регулярному выражению, у меня есть значения, как показано ниже, и ожидаемый результат, как показано ниже

0-100000

+20170910020359,761

предприятие

0 + 093000

1-080000

+17032375858

Выход --->

0 + 093000

1-080000

0-100000