asp.NET开发中正则表达式中BUG分析


比如以下的代码就是用来测试用正则表达式匹配从 0xff 到 0xffff 的字符。而值范围在 0 到 0xfe 的所有字符是不能被匹配的。  
以下为引用的内容:

复制代码 代码如下:

Regex regex = new Regex(@"[/u00FF-/uFFFF]+");
  // The characters, whoes value are smaller than 0xff,
  // are not expected to be matched.
  for (int i = 0; i <0xff; i++) {
  string s = new string(new char[] { (char)i });
  Debug.Assert(!regex.IsMatch(s), string.Format(
  "The character was not expected to be matched: 0x{0:X}!", i));
  }
  // However, the characters whoes value
  // are greater than 0xfe are expected to be matched.
  for (int i = 0xff; i <= 0xffff; i++) {
  string s = new string(new char[] { (char)i });
  Debug.Assert(regex.IsMatch(s), string.Format(
  "The character was expected to be matched: 0x{0:X}!", i));
  }

这时的运行结果是正常的,没有任何的断言错误出现。
然而当使用忽略大小写的匹配模式时,结果就不一样了。将上面代码中的第一行改成:
1Regex regex = new Regex(@"[/u00FF-/uFFFF]+", RegexOptions.IgnoreCase);
程序运行的时候就会有两处断言错误。它们分别是字符值为 73 和 105,也就是小写字母 i 和大写字母 I。 这个 bug 非常奇怪,别的字符都很正常!而且用 javascript脚本在 IE (版本是6.0)里面运行也同样有这么 bug 存在(比如下面这段代码)。然而在 Firefox中运行就是没有问题的。还是 Firefox 好啊,呵呵!
以下为引用的内容:
复制代码 代码如下:

var re = /[/u00FF-/uFFFF]+/;
  // var re = /[/u00FF-/uFFFF]+/i;
  for(var i=0; i<0xff; i++) {
  var s = String.fromCharCode( i );
  if ( re.test(s) ) {
  alert( 'Should not be matched: ' + i + '!' );
  }
  }
  for(var i=0xff; i<=0xffff; i++) {
  var s = String.fromCharCode( i );
  if ( !re.test(s) ) {
  alert( 'Should be matched: ' + i + '!' );
  }
  }



相关阅读:
多字段模糊搜索的函数
JS 日历控件(蓝色)
网页变灰配合全国哀悼日的css代码 20100421
Linux下创建自解压tar文件
JavaScript 实现 Konami Code
js 返回时间戳所对应的具体时间
二十行语句实现从Excel到mysql的转化
blockquote标记应用注意
实例解析 用Linux操作系统构建的路由器
编写线程安全的JSP应用程序
div结合css布局bbs首页(div+css布局入门)
Fedora 4升级到Fedora 9
Linux操作系统上去掉文件属性的命令介绍
ajax 异步获取数据实现代码 (js创建ajax对象)
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 生活的分享 一轮明月照我心作文800字 左手和右手作文350字 晒棉被150字 他变了 棉袄情 小学四年级作文400字:给丁纯鑫的一封信 市客运办工作总结 高二生物复习计划 以“车轮上的懒政”谈基层干部教育 四叶草的伤悲 观荷心语 看图写话美丽的春天作文250字 幸福来过,只是比较短暂! 【未归的人】文字:纪春 这件事真让我难忘 五月作文 三严三实心得体会 一位母亲写给世界的信 高校毕业生选调到农村村主任助理岗位工作总结 《安娜.卡列宁娜》读后感 11月份营销工作总结范文 活着的童话 爱就一个字作文100字 信息系大学生入党自传范文 相遇,之后是错过 2015学校安全责任状 猫、老鼠和狗的故事1200字 妇女节英文祝福语 2015民主评议党员自评总结 我怀念那段聆听收音机的岁月,怀念我清贫而充满朝气的青春时代…… 因为美,索伊美作文800字 李商隐《瑶池》 经典爱情语录20句 武松打虎最新版 你说,上辈子的我可能是一只猫咪 携梦前行叹华年流逝 3M驾驭企业的成功之道 “我心中的奥运”话题作文16篇学生范文 小蕃茄 五四青年节的存在意义 初中初一作文700字:我的星期天-看书风波 14年650字一年级小学作文篇莎拉国的小仙子 内部培养变借猎头觅才 日企看重“空降兵” 单位的工作总结 难忘的童年作文精选 我看"教学目标的设计" 词牌名 菩萨蛮 2015小学英语教学工作汇报 如果不学会包容就永远都不会懂爱!

Copyright © 2016 phpStudy |