0

我还是正则表达式的新手,请帮助我。

我有这个 html 文件,其中一些段落包含美元值(200 美元、300 美元等)。每当用户访问该文件时,它将这些值转换为他们自己的货币。

我想使用正则表达式来查找这些值并进行适当的转换。

提前致谢!

4

1 回答 1

1

这是一个假设很少的工作示例。我相信你有转换因子,你可以用转换因子代替实际值。

编辑:修改为仅允许转换匹配的数值。数值假定为正整数值。

在这里摆弄 http://jsfiddle.net/gbsandeep/eBQFE/

例子:

  • 从货币“$”转换为带有符号“@”的假设货币

  • 换算系数:0.05

输入

200 美元,一些 100 美元的内容在这里卖 300 美元

输出

@10 一些@5 的内容在@15 这里

 function convert() {
     var replacedText = document.getElementById('myPara').innerText;
     var newCurrencySymbol = '@';
     var currencyConversionFactor = 0.05;
     var numberPattern = /\$\d+/g;
     var numbers = replacedText.match(numberPattern);
     for (var i = 0; i < numbers.length; i++) {
         // extract numerical value
         var num = numbers[i].match(/\d+/);
         // your currency conversion here
         var newNum = newCurrencySymbol + (num * currencyConversionFactor);
         replacedText = replacedText.replace(numbers[i], newNum);
     }
     document.getElementById('convertedPara').innerText = replacedText;
 }
于 2012-09-03T14:19:49.543 回答