0
我有一個從API返回的字符串,我想添加包含溫度的度符號(「明天將是89F的高位」→「明天將是89°F的高位」) 。正則表達式看起來像我的變量forecastString
?如何在度量符號中添加Javascript字符串中的溫度?
我有一個從API返回的字符串,我想添加包含溫度的度符號(「明天將是89F的高位」→「明天將是89°F的高位」) 。正則表達式看起來像我的變量forecastString
?如何在度量符號中添加Javascript字符串中的溫度?
此替換將工作:
forecastString = forecastString.replace(/[0-9]{1,3}F/g, function addDegreeSymbol(x){return x.replace("F", "°F");});
forecastString = forecastString.replace(/[0-9]{1,3}C/g, function addDegreeSymbol(x){return x.replace("C", "°C");});
正則表達式發現的1-3位的任何數字由F/C緊接着,和替換°F的F/C /℃
爲什麼不是
forecastString.replace(/\b(\d{1,3})(?=[FC]\b)/, "$1°");
?你確定不區分大小寫嗎?
即將發佈相同,但我會在數字前添加'\ b',否則3的上限是無用的。我認爲在這種情況下區分大小寫是有意義的,因爲單位符號是大寫字母。另一方面,可以在數字後面添加'\ s *'以允許空格。 –
「爲什麼不?」的答案是因爲我是一個noob :) – xd1936
@ xd1936我更新了正則表達式。如果你願意,我建議你使用unicode符號'℃'和'℉'。 – horcrux