Javascript 使用regexp将$(5.20)转换为-5.20

Javascript 使用regexp将$(5.20)转换为-5.20,javascript,jquery,regex,Javascript,Jquery,Regex,我试图使用正则表达式将$(5.20)转换为-5.20,但似乎不知道如何使用正则表达式。有人能帮我解决这个问题吗?我需要删除美元符号,只接受最大小数点为1的数字,即不接受5.2.0,而只接受5.20。此外,开头的$是可选的,也可以有多个$ 我开始的例子如下: ^\((\d)*\)$ - does not work -$1 试试这个正则表达式 ^\$\((\d+\.\d+)\)$ 你的替代者应该已经很好了。此正则表达式要求小数点前后至少有一位数字 正则表达式的问题是,它只会在没有小数点的情况下

我试图使用正则表达式将
$(5.20)
转换为
-5.20
,但似乎不知道如何使用正则表达式。有人能帮我解决这个问题吗?我需要删除美元符号,只接受最大小数点为1的数字,即不接受
5.2.0
,而只接受
5.20
。此外,开头的
$
是可选的,也可以有多个
$

我开始的例子如下:

^\((\d)*\)$ - does not work

-$1
试试这个正则表达式

^\$\((\d+\.\d+)\)$
你的替代者应该已经很好了。此正则表达式要求小数点前后至少有一位数字

正则表达式的问题是,它只会在没有小数点的情况下匹配。此外,您也不会检查
$
字符。最后,如果这
$(5.20)
不是您的完整字符串,那么您应该在开头和结尾省略锚定:

\$\((\d+\.\d+)\)
如果要匹配不带小数点的数字,则可以选择点和第二次重复:

\$*?\((\d+\.?\d*)\)
试试这个正则表达式

^\$\((\d+\.\d+)\)$
你的替代者应该已经很好了。此正则表达式要求小数点前后至少有一位数字

正则表达式的问题是,它只会在没有小数点的情况下匹配。此外,您也不会检查
$
字符。最后,如果这
$(5.20)
不是您的完整字符串,那么您应该在开头和结尾省略锚定:

\$\((\d+\.\d+)\)
如果要匹配不带小数点的数字,则可以选择点和第二次重复:

\$*?\((\d+\.?\d*)\)

如果不是所有的数字都有小数点,你可以在
\.
后面加一个
,然后用
*
代替第二个
+
。从他的问题中,我假设他们总是有小数点,但我会把它添加到答案中!我不得不在你的正则表达式测试中添加一个小的调整,用于多个/可选$的修订版^\$*?((\d+\.\d+)$)啊好吧,我不知道
$
的数量是可变的,或者它们甚至是可选的。在询问正则表达式问题时,请提供大量匹配和不匹配的示例列表。此外,如果我的答案解决了你的问题,请考虑接受它;包含可选小数的第二次修订版^\$*?(\d+)(\d+)?(\d+))$如果不是所有数字都有小数点,你可以在
\
后面加一个
。并使用
*
代替第二个
+
。从他的问题中,我假设他们总是有小数点,但我会把它添加到答案中!我不得不在你的正则表达式测试中添加一个小的调整,用于多个/可选$的修订版^\$*?((\d+\.\d+)$)啊好吧,我不知道
$
的数量是可变的,或者它们甚至是可选的。在询问正则表达式问题时,请提供大量匹配和不匹配的示例列表。此外,如果我的答案解决了你的问题,请考虑接受它;第二次修订包含可选小数^\$*?(\d+(\)?(\d+)?)$