完美版js金錢正則表達式校驗


前言 :

同事在實現發布商品中填寫單價時,需要js校驗價格是否符合金錢的格式,在網上找了一些,沒有一個能解決問題的,都是簡單的校驗,漏洞百出。

我說這還不簡單,不就一個正小數嗎?
他說你寫寫就知道了,情況有多復雜,寫就寫,一寫才知道情況確實很多,給他寫了一個又一個,他都能找出不完美的問題,經過10輪修改后,最后徹底征服他了,得出最終完美版,發出來給大家分享一下,歡迎大家測試修改。

<!doctype html>
<html lang="en">
 <head>
  <meta charset="UTF-8">
  <meta name="Generator" content="EditPlus®">
  <meta name="Author" content="">
  <meta name="Keywords" content="">
  <meta name="Description" content="">
  <title>Document</title>
 </head>
 <body>
 
 <script type="text/javascript">
	 var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
	 var money = "520.100";
	 //000 錯
	 //0 對
	 //0. 錯
	 //0.0 對
	 //050 錯
	 //00050.12錯
	 //70.1 對
	 //70.11 對
	 //70.111錯
	 //500 正確
	 if (reg.test(money)) {
		  alert("正確~");
	 }else{
		  alert("有誤~");
	 };
 </script>
  

 </body>
</html>

  

順便上一下交流圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM