[英]RegEx to accept numbers less then -50.0 or greater than 80.0
我試圖找到一個JavaScript正則表達式來接受小於-50.0或大於80.0的數字。
下面的表達式不起作用:
/^([-][5][0]\.[0]|[-][0-4][0-9]\.[0-9]|[-][0-9]\.[0-9])|([0]\.[0]|[1-9]\.[0-9]|[0-7][0-9]\.[0-9]|[8][0]\.[0])$/
RegEx用於模式匹配,而不是用於此類。 只需將輸入解析為數字並比較其值即可。
function checkValue(input){
var number = parseInt(input);
if (number === NaN) throw new Error('input was not a number') /* error checking */
if (number < -50 || number > 80) return true;
return false;
}
編輯:如果可以,您應該嘗試進行某種形式的驗證。 RegEx不適合此功能。 隨時發布更多上下文代碼,我們可以在此處了解如何進行最佳驗證。
您可以使用此正則表達式:
/(?:^|[^.])(-([56]\d|\d{3,})(?:\.\d{1,2})?\b|\b([89]\d|\d{3,})(?:\.\d{1,2})?\b)/gm
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.