货币形式REGEXP,更改符号

问题描述

我正在使用HighChart,需要将货币值格式化为特定格式。

示例-> XX.XXX.XXX,XX€

我正在highchart中使用此函数来正确设置值的格式:

formatter: function () {
               return parseFloat (this.total,10) .toFixed (2) .replace (/ (\ d) (? = (\ d {3}) + \.) / g,'$ 1,'). toString () + ' € ';
                      }

问题是我没有得到想要的匹配点和逗号。

值示例:

Given -> 1052325
Expected -> 10.523,25 €
Current value obtained -> 10,523.25

我可以做一个新的replace()并更改点的逗号,但是我想立即在REGEXP上知道如何做。

非常感谢您

解决方法

好的。我无法使用HighChart中的某些功能。

我在ppotaczek example

中尝试了此代码
Highcharts.chart('container',{
  series: [{
    data: [1052325],dataLabels: {
      enabled: true,formatter: function() {
        var originalString = parseFloat(this.y,10).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g,'$ 1,').toString();
    
    var finalPriceString = originalString.split('');
    var finalPriceStringLenght = finalPriceString.length;
    var rowtoChange = finalPriceStringLenght - 3;
    
    
    finalPriceString[rowtoChange] = 'I';
    
    var lastString = finalPriceString.join('') + ' €';
    
   alert(lastString);
    
    
  }
}

}] });

该代码可在Fiddle示例中使用,但当我将其放入Highchart Json中时将无法使用。

我现在尝试了另一种方法,我一直使用这种字符串格式,所以我只想替换字符串末尾的第三个字符。

为此,我将其与regexp一起使用:

stringFormated.replace(/.$/,',');

它可以正常工作并且可以很好地替换。问题在于它始终位于字符串的最后一个字符。我希望它移到字符串末尾的第三个字符。

最诚挚的问候

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...