2013-11-12 4 views
1

Мне нужно создать регулярное выражение, которое захватывает все различные типы валюты, такие как:Валюта Regex - Евро/фунт/доллар

£1 
$100,000,000 
€25.00 
25p  (pence) 
25c  (cents) 
25m  (million) 
25bn  (billion) 
25 million 
25 billion 
£0.25 

В настоящее время я получил следующее:

^(([^0]{1})([0-9])*|(0{1}))(\.\d{2})?$ 

Это работает для:

£100 
200 -- don't want this to be included 
$200 
€400 
350 -- don't want this to be included 

Любая помощь пожалуйста?

ответ

0

Вы можете попробовать рисунок так:

^([£€$]([0-9]([0-9,])*)(\.\d{2})?|([0-9]([0-9,]))(\.\d{2})?([pcm]|bn| [mb]illion))$ 

Это будет соответствовать либо:

  • £, или $ с последующим числом, которое может содержать запятые, с последующим необязательным ., а затем еще две цифры.
  • Число, которое может содержать запятые, с последующим дополнительным . с последующим более двух цифр, а затем p, c, m, bn, или пространство, с последующим million или billion.

Вот demonstration

Смежные вопросы