# Creative Communities of the World Forums

The peer to peer support community for media production professionals.

Forums Adobe After Effects Expressions Need help in moving the comma

• # Need help in moving the comma

3 Members · 5 Posts
• ### Avinash Ramanath

February 1, 2021 at 6:18 pm

Hi, I came across this incredible number counter, I need help in moving the comma one place left. For example, currently, it’s like this 400,00. I want it to be 40,000.

`numDecimals = 0;commas = true;dollarSign = false;beginCount = 500;endCount = 40000;dur = 2;t = time - inPoint;s = ease (t, 0, dur, beginCount, endCount).toFixed(numDecimals) + "+";prefix = "";if (s == "-"){prefix = "-";s = s.substr(1);}if(dollarSign) prefix += "\$";if (commas){decimals = "";if (numDecimals > 0){decimals = s.substr(-(numDecimals + 1));s = s.substr(0,s.length - (numDecimals + 1));}outStr = s.substr(-s.length, (s.length-1)%3 +1);for (i = Math.floor((s.length-1)/3); i > 0; i--){outStr += "," + s.substr(-i*3,3);}prefix + outStr + decimals;}else{prefix + s;}`
• ### Trent Armstrong

February 1, 2021 at 6:42 pm

Hi!

The expression is adding a “+” to the end of the number and therefore putting the comma in the wrong spot.

s = ease (t, 0, dur, beginCount, endCount).toFixed(numDecimals);

And let me know if that’s just not what you’re looking for.

Trent

• ### Avinash Ramanath

February 16, 2021 at 12:05 pm

I found a better way and shorter of doing it. Leaving the code here for someone who might find it useful,

Thanks to Nick Khoo’s video –

Apply point control effect to the text layer and paste the below expression to sourceText param.

```s = "" + Math.round(effect("Point Control")("Point"));
"INR " + s.replace(/\B(?=(?:(\d\d)+(\d)(?!\d))+(?!\d))/g, ',') + "+";```

//use this for numbers with decimals

```s = "" + Math.round(effect("Point Control")("Point"));
"INR " + s.replace(/\B(?=(?:(\d\d)+(\d)(?!\d))+(?!\d))/g, ',') + "+";```

Some contents or functionalities here are not available due to your cookie preferences!

• ### Trent Armstrong

February 16, 2021 at 1:53 pm

REGEX! Right on! This is a great look at how regex can be used in expressions!

Trent

• ### Kevin Camp

February 16, 2021 at 5:06 pm

Also, if you have a newer version of AE (17+) and set the Expression Engine to JavaScript in the Project Settings, you can use the java function toLocaleString() to add commas/separators based on language and country.

This would put in commas as separators:

`num = effect("Point Control")("Point") ;`

num.toLocaleString('en-US') ;

This would use spaces for French:

`num = effect("Point Control")("Point") ;`

num.toLocaleString('fr-FR') ;

You can use a slider or rotation control or even the sourceText value, but you’ll need to convert it to float or integer first:

`num = effect("Slider Control")("Slider") ;`

parseFloat(num).toLocaleString() ;

There are also options for currency and date and more in toLocaleString(). This link has some examples: https://www.c-sharpcorner.com/article/format-number-currency-and-date-using-tolocalestring-method-in-javascript/

Viewing 1 - 5 of 5 posts