我需要替換字符串中的小數點分隔符,並且小數點分隔符可以是點號.
(例如英文)或逗號,
(例如德語)。所以我有用於包含分隔符字符串的變量sep
。用替換點的變量創建正則表達式
要轉換的英語基礎的小數點分隔符,我做了以下的替代品,但我得到了,dd,dd
而不是120,dd
:
var sep = '.';
var numberStr = '120.31';
numberStr = numberStr.replace(new RegExp(sep + '\\d{2}', 'g'), ',dd');
console.log(numberStr);
有誰知道我在哪裏出了錯?
要澄清一下...(他回答之前,我可以做),正則表達式結束的'\ d {2}'這意味着該點匹配的一切。爲了避開這個點,你必須添加'\\',以便提供一個點,而不是「匹配除換行符之外的所有內容」。但我應該看看basst314的答案。原因:那些額外的正則表達式。這是不需要的。 – KarelG
如果你檢查我的原始答案,你會發現這是第一個版本。但是你認爲OP在改變分隔符時會發生什麼? – raina77ow