[英]Allow only positive and negative numbers in textbox using JavaScript regex
[英]Javascript regex to allow negative numbers
我正在使用此正則表達式來允許浮點數
str.replace(/(\.\d\d)\d+|([\d.]*)[^\d.]/, '$1$2')
我還需要允許負數。 有任何想法嗎。
這允許123.45,並且不允許像123.45a這樣的字符。 我需要允許-123.45。 目前不允許我輸入負數
這是匹配負浮點數的較短正則表達式:
/^-?[0-9]\d*(\.\d+)?$/
如果要明確匹配+123.123
類的正數和負數,請使用以下正則表達式:
/^[-+]?[0-9]\d*(\.\d+)?$/
您可以嘗試以下正則表達式:
parseFloat(str.replace(/.*?(\-?)(\d*\.\d+)[^\d\.]*/, '$1$2'));
但是,匹配數字比替換其他字符更好:
var matches = /(\-?\d*\.(?:\d+)?)/.exec(str);
if (typeof matches != 'undefined' && matches.length > 0) {
var num = parseFloat(matches[1]);
}
試試以下方法
str.replace(/-?[0-9]+(\.[0-9]+)?/g,'')
OR
str.match(/^-?[0-9]+(?:\.[0-9]+)?$/,'')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.