我想知道如何才能获得匹配number
,.
和-
的正则表达式。
我正在使用它:
/^[0-9\.'S]+$/
由此工作正常但不适用于符号“ - ”。
答案 0 :(得分:4)
你只是没有在正则表达式中使用文字短划线-
(或减号)。尝试:
/^[0-9\.-]+$/
但是如果你想要一个正确的数字,你可能想要使用更合适的正则表达式:
/^-?[0-9]+(?:\.[0-9]+)?$/
第一个正则表达式可以接受诸如3987----....
之类的内容,而第二个正则表达式不会接受它,但会接受-87.983274
之类的内容。
答案 1 :(得分:2)
那是因为-
不属于你的角色类。您只在类范围内使用-
(仅包括数字)。另外,我不知道S
和'
在那里做了什么:
/^[0-9.-]+$/
此外,我可以向您保证,在花时间阅读this tutorial正则表达式后,您似乎不会感到困惑。
答案 2 :(得分:0)
尝试下面的正则表达式。
/^-?[0-9\.]+$/