Javascript 为以下值创建正则表达式

Javascript 为以下值创建正则表达式,javascript,regex,Javascript,Regex,我想创建一个正则表达式,使其能够接受以下值:- 100, 100.00, (100),(100.00),$100, $100.00, $(100), $(100.00) 我成功地构建了以下正则表达式:- /^(\$?(?=\d*(\.\d{1,3})?$))|^(\$?\((?=\d*(\.\d{1,3})?\)$))/ 但如果值为$ 我想如果价值只有美元,那么它应该给而不是接受它 但同时也应接受空白值 请帮帮我 提前感谢似乎您的整数部分从来都不是可选的,因此您应该确保正则表达式将其设置为必

我想创建一个正则表达式,使其能够接受以下值:-

100, 100.00, (100),(100.00),$100, $100.00, $(100), $(100.00)
我成功地构建了以下正则表达式:-

/^(\$?(?=\d*(\.\d{1,3})?$))|^(\$?\((?=\d*(\.\d{1,3})?\)$))/
但如果值为$

我想如果价值只有美元,那么它应该给而不是接受它

但同时也应接受空白值

请帮帮我


提前感谢

似乎您的整数部分从来都不是可选的,因此您应该确保正则表达式将其设置为必填项(现在,即使是空字符串也会通过您的正则表达式):


\d+
表示“一个或多个数字”。

我将正则表达式更改为:

^(\$?(?=\d+(\.\d{1,3})?$))|^(\$?\((?=\d+(\.\d{1,3})?\)$))|^((?=\d*(\.\d{1,3})?$))

而且它对我有用。

@NSS所以只要把它改成
/^$|…/
?thanx dude。。我自己也得到了答案……)
^(\$?(?=\d+(\.\d{1,3})?$))|^(\$?\((?=\d+(\.\d{1,3})?\)$))|^((?=\d*(\.\d{1,3})?$))