很抱歉,我对Coldfusion很新,我需要一些帮助。
我有一个包含配方方法的字符串。 “将你的烤箱加热到200℃,然后等到内部温度达到60℃”
这些数值可以在字符串中的任何位置出现多次。 从C转换为F的计算是C * 9/5 + 32.
所以我需要使用动态计算的新值重新替换字符串中的所有数字。
我希望这很清楚。
答案 0 :(得分:2)
这是我的方法。
<cfscript>
sString = "Heat your oven to 200c and then cook till the temp internally is 60c";
aFind = ReMatchNoCase("\d+c",sString);
x = 0;
while(x < arrayLen(aFind)){
x++;
nCalc = RematchNoCase("\d+",aFind[x])[1];
nCalc = nCalc*9/5+32;
sString = ReReplaceNoCase(sString,aFind[x],'#aFind[x]# (#ncalc#F)');
}
writeOutput(sString);
</cfscript>
Adams链接UDF可能会更好,但我想这个代码示例可以看看如何在没有第三方的情况下完成它。