我有一個JQuery函數,用於在文本輸入字段中顯示數量。非常簡單... 但是,這是一個法國的應用程序,我試圖建立一個法國數字格式的正則表達式(空間爲千位分隔符,逗號作爲小數點分隔符)。如何爲法語數字格式編寫正則表達式? (空格爲千位分隔符,逗號爲小數點分隔符)
我已經嘗試了幾種方法......最後一次嘗試是.replace(/(\d)(?=(?:\d{3})+(?:$))/g, '$1 ');
,但它沒有空格作爲千位分隔符,也沒有逗號小數點分隔符。 在此先感謝您的幫助!
我有一個JQuery函數,用於在文本輸入字段中顯示數量。非常簡單... 但是,這是一個法國的應用程序,我試圖建立一個法國數字格式的正則表達式(空間爲千位分隔符,逗號作爲小數點分隔符)。如何爲法語數字格式編寫正則表達式? (空格爲千位分隔符,逗號爲小數點分隔符)
我已經嘗試了幾種方法......最後一次嘗試是.replace(/(\d)(?=(?:\d{3})+(?:$))/g, '$1 ');
,但它沒有空格作爲千位分隔符,也沒有逗號小數點分隔符。 在此先感謝您的幫助!
您可以反轉字符串,然後嘗試replace(/(\d{3})/g, "$1 ")
然後再次反轉。這是一個jsFiddle。
注:在小提琴使用的reverse
方法是從this question。
UPDATE
您可能必須先打破字符串轉換成整數和小數部分,進行上述改造,並用逗號把它重新結合在一起(如果需要)。它可能比你想要的更醜陋,但我想不出純粹的正則表達式解決方案。我相應地更新了jsFiddle。
您可以舉一個源/目標格式的例子,以便我們看到預期的行爲? – 2012-08-12 13:20:08
當然Joachim! INPUT = 120500.55 OUTPUT = 120 500,55謝謝! – nadir 2012-08-12 13:55:48