2016-11-06 22 views

回答

4

你可以試試這個:

>>> s = "This shirt, is very nice. It costs DKK ,.1.500,00,." 
>>> re.sub('(?<=\D)[.,]|[.,](?=\D)', '', s) 
'This shirt is very nice It costs DKK 1.500,00' 

使用積極向後斷言檢查由非數字字符前面都符號,並在相同的字符的交替使用正向前查找設置斷言檢查它後面跟着一個非數字字符。

https://regex101.com/r/54STMM/4

+0

謝謝。我發現爲什麼上述表達式不會轉換您的美國有點棘手。給我們? – humblefoolish

+0

請注意,最後一個字符(最後一個逗號)仍然存在問題。 – Dekel

+0

它也不適用於點/逗號作爲字符串的第一個字符。 – Dekel

相關問題