Firefox下正则诡异问题

作者:潇洒 来源:潇洒blog 时间:2009-08-03 14:03:00 

第二次遇到FF下正则兼容性问题( 第一次是关于"g"全局标志的,现在网上已有很多相关文章介绍)。

以下正则在FF和IE下的结果不一样,很是奇怪,目前还没找到原因和解决方案。希望有高手指点一下。谢谢!

    <script type="text/javascript" >

      var re = /^(?:([a-z])|([A-Z])|([0-9])){5,}|(.)+$/;
      alert('abcdeFGHIJ12345'.replace(re, '$1$2$3'));
      alert('ab1F'.replace(re, '$1$2$3'));

      /*
        完整的需求是这样:所有小写,大写,数字。5个以上都替换为1个。5个以下清空。
        
        现在的结果是: 在IE下是正确的: eJ5 ,  在FF下是: 5
        
        期望的结果是: 1、在FF下得到同样的结果  2、弄明白为什么会这样
       */
    </script>



经过一番偿试,总算(试)出FF和IE都兼容的方案来了~ 可惜暂时还无法解释为什么。
(而且也不知道这个方案是否存在bug- -,高手们,快来看看咯~)

发现bug.....跟上面的正则还是不完全一样。当string里的同类字符小于5个时就不对了。- -!
继续求高手帮忙~

    <script type="text/javascript" >
      // 在ie和ff下结果一样了
      var re = /(?:([a-z]){5,}|([A-Z]){5,}|([0-9]){5,})|(.)/g;
      alert('abcdeFGHIJ12345'.replace(re, '$1$2$3'));
      alert('ab1F'.replace(re, '$1$2$3'));
      // 同类字符小于5个时又不对了
      alert('abcFG12'.replace(re, '$1$2$3'));
    </script>

标签:Firefox,兼容性,正则
0
投稿

猜你喜欢

  • 在Heroku云平台上部署Python的Django框架的教程

    2022-02-28 08:46:49
  • 使用coverage统计python web项目代码覆盖率的方法详解

    2023-05-23 18:24:35
  • Java timezone设置和mybatis连接数据库时区设置方式

    2024-01-24 09:43:18
  • 修改MYSQL最大连接数的3种方法分享

    2024-01-21 10:33:44
  • 快速解决cv2.imread()读取图像为BGR的问题

    2023-03-11 12:13:16
  • 如何基于python操作json文件获取内容

    2023-03-30 15:48:04
  • Python常见库matplotlib学习笔记之多个子图绘图

    2023-02-17 19:40:14
  • Python实现简单登录验证

    2023-04-30 15:39:11
  • Python中Generators教程的实现

    2023-07-28 03:23:20
  • MySQL里Create Index 能否创建主键 Primary Key

    2024-01-21 07:12:49
  • Qzoneing主题视觉设计分享

    2009-07-21 18:12:00
  • 详解vue3中组件的非兼容变更

    2024-04-28 09:23:04
  • Django配置MySQL数据库的完整步骤

    2023-07-19 14:43:47
  • 用python实现一个简单计算器(完整DEMO)

    2023-11-10 11:03:48
  • mysql中like % %模糊查询的实现

    2024-01-21 21:24:06
  • 用Asp+XmlHttp实现RssReader功能

    2008-07-09 12:20:00
  • php桥接模式的实例用法及代码分析

    2023-11-18 15:46:33
  • 用Python爬取LOL所有的英雄信息以及英雄皮肤的示例代码

    2021-07-29 00:54:25
  • 零基础写python爬虫之urllib2中的两个重要概念:Openers和Handlers

    2023-06-19 20:06:16
  • python实现比较文件内容异同

    2022-11-10 19:25:27
  • asp之家 网络编程 m.aspxhome.com