Regex 货币正则表达式-欧元/英镑/美元

Regex 货币正则表达式-欧元/英镑/美元,regex,currency,Regex,Currency,我需要创建一个正则表达式,它可以捕获所有不同类型的货币,例如: £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

我需要创建一个正则表达式,它可以捕获所有不同类型的货币,例如:

£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-9]([0-9,])*)(\.\d{2})?|([0-9]([0-9,]))(\.\d{2})?([pcm]|bn| [mb]illion))$
这将匹配以下任一项:

  • 一个
    $
    后跟一个可能包含逗号的数字,后跟一个可选的
    ,后跟两个以上的数字
  • 一种可能包含逗号的数字,后跟一个可选的
    和两个以上的数字,后跟
    p
    c
    m
    bn
    ,或一个空格,后跟
    million
    billion
这里有一个