CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

求限制为大于等于0而小于等于100的正整数的正则表达式

楼主wx136(自古多情空与恨)2004-09-03 17:46:45 在 .NET技术 / ASP.NET 提问

如题,谢谢! 问题点数:100、回复次数:25Top

1 楼leisang(仰望深邃的星空)回复于 2004-09-03 17:49:41 得分 40

[\d]{1,2}|[100]|[0]Top

2 楼exboy(kuku)回复于 2004-09-03 17:52:06 得分 0

来晚了,楼上的已经可以解决问题了.Top

3 楼leisang(仰望深邃的星空)回复于 2004-09-03 17:53:33 得分 0

上面错了,这个才是  
  [\d]{1,2}|100Top

4 楼xrascal(横刀夺爱)回复于 2004-09-03 17:55:39 得分 40

^(0|100|\d{1,2})$Top

5 楼xrascal(横刀夺爱)回复于 2004-09-03 17:56:23 得分 0

leisang   ,你这个还是错的。  
  你可以试试“10aaaaa”Top

6 楼leisang(仰望深邃的星空)回复于 2004-09-03 17:56:30 得分 0

其实\d{1,2}已经包括0了,呵呵Top

7 楼leisang(仰望深邃的星空)回复于 2004-09-03 17:57:13 得分 0

呵呵,这个  
  ^\d{1,2}|100$Top

8 楼jamzh(Show me the money!!!)回复于 2004-09-03 17:57:19 得分 0

帮你顶!~Top

9 楼leisang(仰望深邃的星空)回复于 2004-09-03 18:01:04 得分 0

狂汗!今天状态不好,还是   xrascal(横刀夺爱)   是对的  
   
  ^(\d{1,2}|100)$Top

10 楼xrascal(横刀夺爱)回复于 2004-09-03 18:06:32 得分 0

回来看了一下,上面的还有些错误。正确应该是:  
   
  ^(0|[1-9]{1,2}|100)$  
   
  上面的可以输入   01   ,   02,   055   等等。Top

11 楼rucicvb()回复于 2004-09-03 18:21:06 得分 0

upTop

12 楼wx136(自古多情空与恨)回复于 2004-09-06 09:44:32 得分 0

我去试试,谢谢大家!Top

13 楼wx136(自古多情空与恨)回复于 2004-09-06 10:41:58 得分 0

To:xrascal(横刀夺爱)  
  我希望允许用户输入01   ,   02,   055   等等。  
  但是你的几个版本好像都不行啊。Top

14 楼wangxuan2001(沧海笑一生)回复于 2004-09-06 13:48:39 得分 0

up  
  Top

15 楼beachman(苦行僧)回复于 2004-09-06 14:32:35 得分 10

To:xrascal(横刀夺爱)  
   
  ^(0|[1-9]{1,2}|100)$  
   
  这个应该不能输入10,20,30…………  
   
  -------------------------------------------------------  
   
  ^(0|0?d{1,2}|100)$  
  以上这个你可以试试  
   
  Top

16 楼yichuan1982(亦川——四川新津)回复于 2004-09-06 15:07:10 得分 0

upTop

17 楼yichuan1982(亦川——四川新津)回复于 2004-09-06 15:08:59 得分 10

上面的都写完了,俺就不再写了,发个这个:  
  \   将下一个字符标记为一个特殊字符、或一个原义字符、或一个   后向引用、或一个八进制转义符。例如,\'n\'   匹配字符   \"n\"。\'\n\'   匹配一个换行符。序列   \'\\\'   匹配   \"\\"   而   \"\(\"   则匹配   \"(\"。    
  ^   匹配输入字符串的开始位置。如果设置了   RegExp   对象的   Multiline   属性,^   也匹配   \'\n\'   或   \'\r\'   之后的位置。    
  $   匹配输入字符串的结束位置。如果设置了RegExp   对象的   Multiline   属性,$   也匹配   \'\n\'   或   \'\r\'   之前的位置。    
  *   匹配前面的子表达式零次或多次。例如,zo*   能匹配   \"z\"   以及   \"zoo\"。   *   等价于{0,}。    
  +   匹配前面的子表达式一次或多次。例如,\'zo+\'   能匹配   \"zo\"   以及   \"zoo\",但不能匹配   \"z\"。+   等价于   {1,}。    
  ?   匹配前面的子表达式零次或一次。例如,\"do(es)?\"   可以匹配   \"do\"   或   \"does\"   中的\"do\"   。?   等价于   {0,1}。    
  {n}   n   是一个非负整数。匹配确定的   n   次。例如,\'o{2}\'   不能匹配   \"Bob\"   中的   \'o\',但是能匹配   \"food\"   中的两个   o。    
  {n,}   n   是一个非负整数。至少匹配n   次。例如,\'o{2,}\'   不能匹配   \"Bob\"   中的   \'o\',但能匹配   \"foooood\"   中的所有   o。\'o{1,}\'   等价于   \'o+\'。\'o{0,}\'   则等价于   \'o*\'。    
  {n,m}   m   和   n   均为非负整数,其中n   <=   m。最少匹配   n   次且最多匹配   m   次。刘,   \"o{1,3}\"   将匹配   \"fooooood\"   中的前三个   o。\'o{0,1}\'   等价于   \'o?\'。请注意在逗号和两个数之间不能有空格。    
  ?   当该字符紧跟在任何一个其他限制符   (*,   +,   ?,   {n},   {n,},   {n,m})   后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对于字符串   \"oooo\",\'o+?\'   将匹配单个   \"o\",而   \'o+\'   将匹配所有   \'o\'。    
  .   匹配除   \"\n\"   之外的任何单个字符。要匹配包括   \'\n\'   在内的任何字符,请使用象   \'[.\n]\'   的模式。    
  (pattern)   匹配pattern   并获取这一匹配。所获取的匹配可以从产生的   Matches   集合得到,在VBScript   中使用   SubMatches   集合,在JScript   中则使用   {CONTENT}…   属性。要匹配圆括号字符,请使用   \'\(\'   或   \'\)\'。    
  (?:pattern)   匹配   pattern   但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用   \"或\"   字符   (|)   来组合一个模式的各个部分是很有用。例如,   \'industr(?:y|ies)   就是一个比   \'industry|industries\'   更简略的表达式。    
  (?=pattern)   正向预查,在任何匹配   pattern   的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如,   \'Windows   (?=95|98|NT|2000)\'   能匹配   \"Windows   2000\"   中的   \"Windows\"   ,但不能匹配   \"Windows   3.1\"   中的   \"Windows\"。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始。    
  (?!pattern)   负向预查,在任何不匹配Negative   lookahead   matches   the   search   string   at   any   point   where   a   string   not   matching   pattern   的字符串开始处匹配查找字符串。这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。例如\'Windows   (?!95|98|NT|2000)\'   能匹配   \"Windows   3.1\"   中的   \"Windows\",但不能匹配   \"Windows   2000\"   中的   \"Windows\"。预查不消耗字符,也就是说,在一个匹配发生后,在最后一次匹配之后立即开始下一次匹配的搜索,而不是从包含预查的字符之后开始      
  x|y   匹配   x   或   y。例如,\'z|food\'   能匹配   \"z\"   或   \"food\"。\'(z|f)ood\'   则匹配   \"zood\"   或   \"food\"。      
  [xyz]   字符集合。匹配所包含的任意一个字符。例如,   \'[abc]\'   可以匹配   \"plain\"   中的   \'a\'。      
  [^xyz]   负值字符集合。匹配未包含的任意字符。例如,   \'[^abc]\'   可以匹配   \"plain\"   中的\'p\'。      
  [a-z]   字符范围。匹配指定范围内的任意字符。例如,\'[a-z]\'   可以匹配   \'a\'   到   \'z\'   范围内的任意小写字母字符。      
  [^a-z]   负值字符范围。匹配任何不在指定范围内的任意字符。例如,\'[^a-z]\'   可以匹配任何不在   \'a\'   到   \'z\'   范围内的任意字符。      
  \b   匹配一个单词边界,也就是指单词和空格间的位置。例如,   \'er\b\'   可以匹配\"never\"   中的   \'er\',但不能匹配   \"verb\"   中的   \'er\'。      
  \B   匹配非单词边界。\'er\B\'   能匹配   \"verb\"   中的   \'er\',但不能匹配   \"never\"   中的   \'er\'。    
  \cx   匹配由x指明的控制字符。例如,   \cM   匹配一个   Control-M   或回车符。   x   的值必须为   A-Z   或   a-z   之一。否则,将   c   视为一个原义的   \'c\'   字符。      
  \d   匹配一个数字字符。等价于   [0-9]。      
  \D   匹配一个非数字字符。等价于   [^0-9]。      
  \f   匹配一个换页符。等价于   \x0c   和   \cL。    
  \n   匹配一个换行符。等价于   \x0a   和   \cJ。    
  \r   匹配一个回车符。等价于   \x0d   和   \cM。    
  \s   匹配任何空白字符,包括空格、制表符、换页符等等。等价于   [   \f\n\r\t\v]。    
  \S   匹配任何非空白字符。等价于   [^   \f\n\r\t\v]。    
  \t   匹配一个制表符。等价于   \x09   和   \cI。    
  \v   匹配一个垂直制表符。等价于   \x0b   和   \cK。    
  \w   匹配包括下划线的任何单词字符。等价于\'[A-Za-z0-9_]\'。      
  \W   匹配任何非单词字符。等价于   \'[^A-Za-z0-9_]\'。      
  \xn   匹配   n,其中   n   为十六进制转义值。十六进制转义值必须为确定的两个数字长。例如,   \'\x41\'   匹配   \"A\"。\'\x041\'   则等价于   \'\x04\'   &   \"1\"。正则表达式中可以使用   ASCII   编码。.    
  \num   匹配   num,其中   num   是一个正整数。对所获取的匹配的引用。例如,\'(.)\1\'   匹配两个连续的相同字符。      
  \n   标识一个八进制转义值或一个后向引用。如果   \n   之前至少   n   个获取的子表达式,则   n   为后向引用。否则,如果   n   为八进制数字   (0-7),则   n   为一个八进制转义值。    
  \nm   标识一个八进制转义值或一个后向引用。如果   \nm   之前至少有is   preceded   by   at   least   nm   个获取得子表达式,则   nm   为后向引用。如果   \nm   之前至少有   n   个获取,则   n   为一个后跟文字   m   的后向引用。如果前面的条件都不满足,若     n   和   m   均为八进制数字   (0-7),则   \nm   将匹配八进制转义值   nm。    
  \nml   如果   n   为八进制数字   (0-3),且   m   和   l   均为八进制数字   (0-7),则匹配八进制转义值   nml。    
  \un   匹配   n,其中   n   是一个用四个十六进制数字表示的   Unicode   字符。例如,   \u00A9   匹配版权符号   (&copy;)。Top

18 楼simonllf(simon)回复于 2004-09-06 15:37:10 得分 0

MARKTop

19 楼softchao(小款※人生就像大便, 往往努力了半天却只迸出几个屁 )回复于 2004-09-06 15:38:27 得分 0

^(0|0?d{1,2}|100)$  
  试试...Top

20 楼windinwing(潇笑)回复于 2004-09-06 15:43:41 得分 0

这个不用正则可能处理起来更快一些  
  Top

21 楼wx136(自古多情空与恨)回复于 2004-09-06 16:12:45 得分 0

T0:windinwing(潇笑)  
  项目需要,没办法啊。  
  诸位:  
  好像没一个是符合要求的啊。。。。。。。。Top

22 楼mywebcom(我)回复于 2004-09-13 11:12:34 得分 0

^(100|\d{,2})$Top

23 楼ny_nicholas()回复于 2004-09-13 11:49:50 得分 0

帮你顶Top

24 楼wangrenda(浪人)回复于 2004-09-13 12:02:03 得分 0

感觉这么数值问题,大多用js好一点,  
  用正则计算的话需要提交时才判断,  
  这样会影响值的使用.  
   
    另外大于0的正数怎么做正则表达式Top

25 楼vme(Abo)回复于 2004-09-13 12:07:09 得分 0

^+?(([1-9]\d?)|(100)|(0))$Top

相关问题

  • 求一个正则表达式,大于0,小于100的整数
  • 求小于320的正则表达式!
  • 问个匹配正整数的正则表达式
  • 正则表达式
  • 正则表达式
  • 正则表达式?
  • 正则表达式[/.-]
  • 【正则表达式!!!!!!!!】
  • 正则表达式
  • 正则表达式

关键词

  • 字符
  • 匹配
  • 等价
  • xrascal
  • 横刀夺爱
  • zo
  • 输入
  • 前面的子表达式
  • 中
  • 非负整数

得分解答快速导航

  • 帖主:wx136
  • leisang
  • xrascal
  • beachman
  • yichuan1982

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo