Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 货币字段的正则表达式_Javascript_Regex_Expression - Fatal编程技术网

Javascript 货币字段的正则表达式

Javascript 货币字段的正则表达式,javascript,regex,expression,Javascript,Regex,Expression,有人能帮我写一个JavaScript正则表达式吗?我需要写一个字段,允许以下示例: /^(\u00A3)?([0-9\.]+)p?$/ 1英镑,1.00英镑,1便士 我不希望它允许英镑和p加在一起。我也不希望它允许超过1个小数点。到目前为止,我有以下几点: /^(\u00A3)?([0-9\.]+)p?$/ 但是,这并不是100%准确地工作。任何帮助或指导都将不胜感激。谢谢那么: /^(\u00A3[0-9\.]+)|([0-9\.]+p)$/ 您可以尝试以下正则表达式: ^(?:\

有人能帮我写一个JavaScript正则表达式吗?我需要写一个字段,允许以下示例:

/^(\u00A3)?([0-9\.]+)p?$/ 
1英镑,1.00英镑,1便士

我不希望它允许英镑和p加在一起。我也不希望它允许超过1个小数点。到目前为止,我有以下几点:

/^(\u00A3)?([0-9\.]+)p?$/ 
但是,这并不是100%准确地工作。任何帮助或指导都将不胜感激。谢谢

那么:

/^(\u00A3[0-9\.]+)|([0-9\.]+p)$/ 

您可以尝试以下正则表达式:

^(?:\u00A3([0-9]+(?:\.[0-9]{1,2})?)|[0-9]+p)$

对于磅,这将允许高达2便士。如果您想允许更多,只需使用
+

^(?:\u00A3([0-9]+(?:\.[0-9]+)?)|[0-9]+p)$
而且,我没有把小数点换成便士。如果您也希望允许,您可以使用:

^(?:\u00A3([0-9]+(?:\.[0-9]{1,2})?)|[0-9]+(?:\.[0-9]{1,2})?p)$

这是惊人的帮助-谢谢你!一个很棒的网站。我一定会用的that@30secondstosam不客气!如果您还需要任何与您的问题相关的信息,我很乐意为您提供帮助:)还有一件事@Jerry-我如何允许£symbol是可选的?是不是在u00A3后面加了一个问号?谢谢,是的,你做的和你在问题中做的一样,把paren和一个问号
(\u00A3)?
(?:\u00A3)?
来提高一点速度(没有
?:
paren就变成了一个捕获组,这意味着脚本将保存内部内容并消耗更多内存).Hi Jerry-很抱歉再次打扰-在链接上使用JavaScript时出错。这就是我需要表达式工作的地方。在JS中