Skip to content Skip to sidebar Skip to footer

Javascript Regex Currency Symbol In A String

so I have a formatting string that can be $#,###.00 or '£#,###.00 and I would like to get the currency symbol form it here is the code that I'm using: currencySymbol = format.m

Solution 1:

Short answer:

/[\$\xA2-\xA5\u058F\u060B\u09F2\u09F3\u09FB\u0AF1\u0BF9\u0E3F\u17DB\u20A0-\u20BD\uA838\uFDFC\uFE69\uFF04\uFFE0\uFFE1\uFFE5\uFFE6]/

Long answer:

A JavaScript regular expression equivalent to /\p{Sc}/ is:

ScRe = /[\$\xA2-\xA5\u058F\u060B\u09F2\u09F3\u09FB\u0AF1\u0BF9\u0E3F\u17DB\u20A0-\u20BD\uA838\uFDFC\uFE69\uFF04\uFFE0\uFFE1\uFFE5\uFFE6]/

ScRe.test("$"); //true
ScRe.test("£"); //true
ScRe.test("€"); //true

The above has been generated by:

$ npm install regenerate
$ npm install unicode-7.0.0$ node 
> regenerate().add(require('unicode-7.0.0/categories/Sc/symbols')).toString();

Watch:

Solution 2:

\p{Sc} is PCRE regex property and Javascript doesn't support it.

In Javascript you need to use specific symbols in character class to match them like this:

/[$£]/

Solution 3:

You could use an addon like XregExp.

Solution 4:

You can also use this /(kr|$|£|€)/.

currencySymbol = format.match(/(kr|$|£|€)/);

Post a Comment for "Javascript Regex Currency Symbol In A String"