如何编写仅允许1-45范围且含单个连字符的正则表达式?
解决方案:匹配仅含单个连字符的数字格式正则表达式
要实现仅包含单个连字符,且连字符前后都有至少一位数字的匹配需求,使用以下正则表达式即可:
^[0-9]+-[0-9]+$
正则规则拆解
^:锁定字符串起始位置,确保前面没有多余字符[0-9]+:匹配1位及以上数字(连字符左侧的内容)-:精准匹配单个连字符,确保整个字符串只有这一处连字符[0-9]+:匹配1位及以上数字(连字符右侧的内容)$:锁定字符串结束位置,确保后面没有多余字符
验证结果
匹配成功的案例
- 1-45
- 2-10
- 12-45
匹配失败的案例
- 1-(连字符后无数字)
- -2(连字符前无数字)
- 1-45-(字符串末尾多了连字符)
- 1,45(使用逗号而非连字符)
- 145(无连字符)
- 1-2-3(包含多个连字符,不符合整体结构)
内容的提问来源于stack exchange,提问作者meet patel
相关产品推荐
相关产品推荐

