RegExp для всего кроме целого числа или десятичной дроби
Привет, подскажите плиз регулярку, которая бы резала все, кроме целых чисел и десятичных дробей, у меня сейчас вот такое выражение:
var regexp = new RegExp('[^0-9.]'); var str = '0.7'; var result = str.replace(regexp, ''); alert(result); Но оно позволяет ввести такое число - "0.756.12.12.12.23...", а нужно, чтобы только одна точка могла быть. Спасибо всем огромное! :-) |
^(\d+)?([.,]\d+)
|
^(?:\d+(?:\.\d+)?)$ |
Цитата:
|
<script type='text/javascript'> alert(/^(\d+)?([.,]\d+)/.test('7')); // false alert(/^(\d+)?([.,]\d+)/.test('7.5d')); // true </script> |
exec, я понял :)
Только ты написал Цитата:
|
<script type='text/javascript'> alert(/(\d+)?([\.,]\d+)?/.test('epic7fail')); // true </script> test() проверяет не на полное соответствие строки, а на вхождение подстроки, подходящей под регулярное выражение. |
А может проще без регулярок )))
var str = '0.756'; var result = isNaN(str)?'':str; alert(result); |
Цитата:
|
alert(isNaN("Infinity")); Цитата:
|
Часовой пояс GMT +3, время: 23:57. |