首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

求大于零小于100的正整数(有且只能有2位)的正则表达式~

2012-12-18 
求大于0小于100的正整数(有且只能有2位)的正则表达式~~~~如题[最优解释]引用:看了下你的数据,那么主要难度

求大于0小于100的正整数(有且只能有2位)的正则表达式~~~~
如题
[最优解释]

引用:
看了下你的数据,那么主要难度会在: 06 正确

这种情况下需要把实际上是个位数的单独处理,大致如下:
  str.matches("0?[1-9]
[其他解释]
看了下你的数据,那么主要难度会在: 06 正确

这种情况下需要把实际上是个位数的单独处理,大致如下:
  str.matches("0?[1-9]
[其他解释]
Java么?
  str.matches("[1-9][0-9]?");
[其他解释]
引用:
Java么?
  str.matches("[1-9][0-9]?");


但是第一位可以没有,就是说 输入 “8” 也正确,这样怎么处理
[其他解释]
1、测试过上面的正则么

2、“有且只能有2位”是啥意思

引用:
引用:

Java么?
str.matches("[1-9][0-9]?");


但是第一位可以没有,就是说 输入 “8” 也正确,这样怎么处理

[其他解释]
^[1-9][0-9]$
[其他解释]
你的题目和你的需求有问题,你实际要的是验证是否是2位数。
[其他解释]
引用:
但是第一位可以没有,就是说 输入 “8” 也正确,这样怎么处理


“第一位可以没有”,换个思路就是“第二位可以没有”。所以只输入“8”,也是符合的。

话说才注意到你题目要求是“有且只能有2位”,这个听起来应该是 >=10 且 < 100 ??

那么,如果是 1~99 用这个:
  str.matches("[1-9][0-9]?");
如果是 10 ~ 99 用这个:
  str.matches("[1-9][0-9]");
区别仅仅是个“?”
[其他解释]
引用:
引用:
但是第一位可以没有,就是说 输入 “8” 也正确,这样怎么处理


“第一位可以没有”,换个思路就是“第二位可以没有”。所以只输入“8”,也是符合的。

话说才注意到你题目要求是“有且只能有2位”,这个听起来应该是 >=10 且 < 100 ??

那么,如果是 1~99 用这个:
  str.matches("[1-9][0-9]?");
如果是 ……


就是说:
0  错误
00 错误
06 正确
6  正确
10 正确
99 正确
100错误
[其他解释]
引用:
1、测试过上面的正则么

2、“有且只能有2位”是啥意思

引用:

引用:

Java么?
str.matches("[1-9][0-9]?");


但是第一位可以没有,就是说 输入 “8” 也正确,这样怎么处理

0  错误
00 错误
06 正确
6  正确
10 正确
99 正确
100错误
[其他解释]
引用:
^[1-9][0-9]$


这样写我之前也想过,但是 06 就不能通过了。。。

规则见楼上
[其他解释]
[1-9][0-9]");

不知道你允许: 
  000006 正确  
  000016 正确
不?
[其他解释]
[1-9][0-9]");

不知道你允许: 
  000006 正确  
  000016 正确
不?


是的,就是 06 处理起来挺麻烦的,你上面说的可以不用考虑,是限制输入位数的 只能是1位或者 2位 ,如果输入 006 就报错


[其他解释]
稍微长了点,但是能用。

^[1-9][0-9]$

热点排行