天天看點

用于驗證金額的正規表達式

金額的相關正規表達式  經常處理金額,對于輸入需要做驗證處理,下面給出正規表達式和解釋: javascritpt的應用:

var patrn=/^(-)?(([1-9]{1}\d*)|([0]{1}))(\.(\d){1,2})?$/;

if (!patrn.exec('-012312123.23')) { alert('false'); }else{ alert('true'); }

解讀/^(-)?(([1-9]{1}\d*)|([0]{1}))(\.(\d){1,2})?$/ ^表示以什麼開頭 我們這裡是 - ,後面的?是表示“-”出現一次或者零次 (([1-9]{1}\d*)|([0]{1})) 表示不以0開頭的數字組合或者僅出現一個0 (\.(\d){1,2})?表示小數點後兩位,出現0次或者一次 必須是大于0的金額正規表達式:

var patrn=/^(([1-9]{1}\d*)|([0]{1}))(\.(\d){1,2})?$/;

Java裡的應用: Pattern pattern = Pattern.compile("^(-)?(([1-9]{1}\\d*)|([0]{1}))(\\.(\\d){1,2})?$");

 Matcher matcher = pattern.matcher("-0.11");

System.out.println(matcher.matches());

繼續閱讀