首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >xx-xx格式的正则表达式(不包含字母)

xx-xx格式的正则表达式(不包含字母)
EN

Stack Overflow用户
提问于 2022-08-04 15:14:21
回答 3查看 38关注 0票数 3

我试图使用regex检查用户输入的格式是否为xx-xx (输入只接受数字,不接受字母数字字符)。

我试过:/[1-9]{1,}\-[1-9]{1,}/,但是当输入字母字符时仍然通过了这个测试。

你们能帮帮我吗。谢谢。

EN

回答 3

Stack Overflow用户

发布于 2022-08-04 15:21:06

您的正则表达式很好,只需要添加位置断言,"^“表示字符串的开头,"$”表示字符串的末尾:

代码语言:javascript
运行
复制
/^[1-9]{2}\-[1-9]{2}$/

如果你只想要xx-xx,最好加上"{2}“。

票数 2
EN

Stack Overflow用户

发布于 2022-08-04 15:18:31

代码语言:javascript
运行
复制
/\d{2}-\d{2}/

为我工作过。

细目:

\d检查一个数字字符,即0-9。

{2}专门检查彼此旁边的两个数字。

-只检查连字符。

票数 0
EN

Stack Overflow用户

发布于 2022-08-04 17:39:53

另一方面,你可以有几个案例,这取决于你要寻找的是什么。

如果您同意xx-xx值可以是00-00和任何其他值,则应该使用此正则表达式:

代码语言:javascript
运行
复制
/^\d{2}-\d{2}$/

如果您接受一个xx-xx值永远不是00-00,但可以是01-03和任何其他值,但不是00-00,那么您应该使用这个regex (有点长,对不起,但是做得很好):

代码语言:javascript
运行
复制
/^[1-9](?=[0-9])[0-9]-[1-9](?=[0-9])[0-9]$|^[0-9](?=[1-9])[1-9]-[0-9](?=[1-9])[1-9]$/

享受吧!

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

https://stackoverflow.com/questions/73238340

复制
相关文章

相似问题

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