JS金額正規表示式

程式設計師良良發表於2021-02-02

1. 非零正數,兩位小數

// ^                   小尖號表示開頭
// {n}                 表示重複n次
// *                   重複零次或更多次
// $                   匹配字串的結束


// [1-9]{1}            表示1到9重複一次
// [0-9]*              表示0到9的數字重複零次或更多次
// [.]{1}              表示 . 重複一次
// [0-9]{2}            表示0到9的數字重複2次
// ([.]{1}[0-9]{2})$   表示括弧中的內容為結尾


var reg = new RegExp("(^[1-9]{1}[0-9]*([.]{1}[0-9]{2})$)|(^[0]{1}([.]{1}[0-9]{1}[1-9]{1})$)|(^[0]{1}([.]{1}[1-9]{1}[0-9]{1})$)");
var amount="10.010"
console.log(amount);
if(!reg.test(amount)){
	console.log('金額格式不對');
}
if(reg.test(amount)){
	console.log("通過");
}

2. 非負(可以是0.00)、兩位小數

var reg = new RegExp("(^(([1-9]{1}[0-9]*)|([0]{1}))([.]{1}[0-9]{2})$)");
var amount="999.00"
console.log(amount);
if(!reg.test(amount)){
	console.log('金額格式不對');
}
if(reg.test(amount)){
	console.log("通過");
}

在這裡插入圖片描述

相關文章