2017-09-14 139 views
-3

價格在我的網站上顯示爲:20美元,如何刪除美國符號並使用正則表達式(JavaScrip)保留$符號?從價格中刪除貨幣符號

我想價格將呈現這樣的:$ 20

我已經試過這樣:

<script> 

$.each($('.price'), function() { 
var pri = $(this).html(); 
$(this).html(pri.replace(/\D/g,'')); 
}) 

</script> 

任何想法?

+7

你嘗試自行解決這個問題? – mdziekon

+0

是的,這是我試過的:'' – Sirius

+2

'你應該**總是**發佈你的代碼在這個問題上,這樣我們可以看到你已經嘗試過什麼,它更容易幫助。 – mdziekon

回答

1

您應該使用replace方法,該方法接受第一個參數a regex表達式。

replace()方法返回一個新字符串,其中某個或所有匹配項的匹配項爲 替換爲替換項。該模式可以是一個字符串或一個 RegExp,替換項可以是一個字符串或函數,對於每個匹配項將被稱爲 。

let string='20$US'; 
 
let desired = string.replace(/US/gi, ''); 
 
console.log(desired);

+2

使用'let'和'var'聽起來像不好的代碼風格。 – Olga

+0

@Olga,在這個例子中是的,但在實際應用中沒有。 'let'是專門用於封閉塊作用域的'closures'.'let'的解決方案。 –

+0

'closures'不是一個問題,它們是一種語言功能,所以我不明白你是如何解決它們的。使用let和var一起挫敗了let,const的用途,它在被定義之前被用作塊範圍並拋出錯誤。但我想這可能會變成一場漫長的題外話題。 =) – Olga