首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >允许一个十进制数或一个十进制数范围的正则表达式

允许一个十进制数或一个十进制数范围的正则表达式
EN

Stack Overflow用户
提问于 2014-04-30 12:59:26
回答 1查看 87关注 0票数 1

我需要一个JavaScript正则表达式,它与单个十进制数或十进制数范围相匹配:

8,4-10 true 8,4-10,5 true 8,4-10,5-3 false 8,4- false 25 true 25,5 true 24.1 false 1a false abc false

我想出了这个模式,但没有给出正确的结果:

(([0-9])+(,([0-9])+)?)?(-(([0-9])+(,([0-9])+)?))?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-30 13:03:43

你的正则表达式是正确的,你只需要锚定它,以确保你匹配整个字符串,而不仅仅是它的一部分。

简化了可以实现的内容,它变成:

代码语言:javascript
运行
复制
^\d+(?:,\d+)?(?:-\d+(?:,\d+)?)?$

\d[0-9]的缩写,(?:...)是一个非捕获组,^$是匹配字符串开头和结尾的锚点(确保除了您想要的以外没有其他任何东西)。

这里的演示

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23388776

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档