-
-
Save itsXactlY/d4057a69b0751c1488f14b3737f0772b to your computer and use it in GitHub Desktop.
This Regexp tries to grep a price from a string
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// This Regexp tries to grep a price from a string. | |
// 1. The number must makes sense. it may contain "." or "," i.e 1 1.000,99 10,0 etc | |
// 2. The String must conatin a currency identifier like EUR,USD,€ or $. | |
// 2a) The currency identifer may be at the begining or at the end of the matching string | |
// 2b) There may be a space between value and currency identifier | |
// This regexp is based upon http://stackoverflow.com/questions/1547574/regex-for-prices | |
(USD|EUR|€|\$|£)\s?(\d{1,}(?:[.,]\d{3})*(?:[.,]\d{2}))|(\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})?)\s?(USD|EUR) | |
updated Version (also matches numbers without delimiters in between like $2 $34 thx PepsiX for pointing out this issue: | |
(USD|EUR|€|\$|£)\s?(\d{1,}(?:[.,]*\d{3})*(?:[.,]*\d*))|(\d{1,3}(?:[.,]*\d*)*(?:[.,]*\d*)?)\s?(USD|EUR) | |
// here is the breakdown: | |
// Price Number: \d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})? | |
// Currency Symbol: a\s?(USD|EUR|€|\$) (with optional leading space)Ω// This Regexp tries to grep a price from a string. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment