I am getting stuck in JavaScript trying to modify my strings.
I am using Met-Office APT to extract weather forecast strings. Problem is temperature in them doesn't have a degree symbol, i.e.:
"Maximum Temperature 15C."
How to search within a random string for a temperature value and either replace "C" with "degrees" or insert degree symbol in-between the value and the C?
This might be really simple but I am just a noob.
My goal is to push modified string through TTS service.
If you have it as a string, do a string replacement with a regular expression that matches your pattern of one or more numbers followed by C
let yourString = "Maximum Temperature 15C."
yourString = yourString.replace(/(\d+)([CF])/,'$1°$2');
console.log(yourString);
You can try this imperative solution
const addTempratureUnit =(temperatureDetails,unit,symbol)=>{
let outputTempratureDetails=""
for (let i=0;i<temperatureDetails.length;i++){
if(temperatureDetails[i]===unit&&(temperatureDetails[i-1]!==""&&!isNaN(temperatureDetails[i-1]))){
outputTempratureDetails+=symbol
}else{
outputTempratureDetails+=temperatureDetails[i]
}
}
return outputTempratureDetails
}
const temperatureDetails="Maximum Temperature 15C."
const modifiedTemperatureDetails=addTempratureUnit(temperatureDetails,"C","°C")
console.log(modifiedTemperatureDetails)