当前位置:  编程技术>其它

javascript高级程序设计(第三版)学习笔记(一) 正则表达式整理

    来源: 互联网  发布时间:2014-10-17

    本文导语:  1、创建正则表达式 第一种方式:注意这里的正则表达式不能使用单引号或者双引号,如下 var pattern1 = /[abc]/i; // 匹配第一个"a"或"b"或"c",不区分大小写 第二种方式:使用RegExp构造函数创建,该构造函数传入两个参数,都是字...

1、创建正则表达式
第一种方式:注意这里的正则表达式不能使用单引号或者双引号,如下
var pattern1 = /[abc]/i; // 匹配第一个"a"或"b"或"c",不区分大小写
第二种方式:使用RegExp构造函数创建,该构造函数传入两个参数,都是字符串,所以需要特别注意""符号的转换,所有元字符(下面有讲元字符)需要双重转义,如下
代码如下:

var patt1 = new RegExp("[abc]","gi"); // 这里等价于 var patt1 = /[abc]/gi;
alert("[abc]".match(patt1)); // return a
var patt2 = new RegExp("\[abc\]","gi"); // 这里等价于 var patt2 = /[abc]/gi; 而在引号内""必须转移为"\"
alert("[abc]".match(patt2)); // return [abc]

说到这里思考两个问题:
a、如果这里的正则表达式,是通过字符串和某个变量动态组合而成的,如何使用第一种方式创建正则表达式?
显然,用第二种创建正则表达式的方式,肯定没有任何问题,因为,传入的第一个参数本身就是一个字符串。要用第一种方式创建,这里需要用到eval()函数,如下
代码如下:

var str = "abc"; // 这可能是一个动态的变量
var patt1 = eval("/\["+str+"\]/"); // 等价于 var patt1 = /[abc]/;
alert("[abc]".match(patt1)); // return [abc]

b、上面两种创建方法有什么不同之处?
《javascript高级程序设计(第三版)》中讲:区别在于是否共享,使用第一种方式创建的正则,共享,第二种不共享。经楼主实践发现结果有点出入,两种创建方式结果一样,都是(true true true),各位可以自行测试。所以这里MARK一下,这两种创建方式没什么区别。
代码如下:

var re = null,i;
for(i=0;i

    
 
 

您可能感兴趣的文章:

  • Javascript里的两种使用正则的方法
  • JavaScript正则表达式库 XRegExp
  • JavaScript 的正则表达式编辑器 Scriptular
  • javascript 正则修正符
  • javascript下一个还原html代码的正则
  • javascript判断中文的正则
  • javascript 小时:分钟的正则表达式
  • javascript下正则匹配百分比的代码
  • 用Javascript正则实现url链接的解析类
  • javascript利用正则快速找出两个字符串的不同字符
  • javascript用正则表达式把1234567890替换为abcdefghij
  • JavaScript正则表达式之后向引用实例代码
  • JavaScript 去前后全脚半脚空格的正则
  • Javascript lastIndex 正则表达式的一个疑惑
  • javascript 正则 判断是否是数字的脚本
  • javascript正则表达式容易被忽略的小问题整理
  • JavaScript正则表达式验证中文实例讲解
  • javascript中正则表达式反向引用示例介绍
  • javascript中匹配价格的正则表达式
  • JavaScript基于正则表达式的数字判断函数
  • JavaScript表达式语言 Esel
  • javascript之正则表达式基础知识小结
  • JavaScript 使用正则表达式进行表单验证的示例代码
  • JavaScript常用的正则表达式表单验证代码
  • javascript 数字的正则表达式集合
  • javascript 正则表达式用法 小结
  • JavaScript 正则表达式 验证整数、小数、实数、有效位小数最简单
  • Javascript中使用exec进行正则表达式全局匹配时的注意事项
  • javascript正则表达式基础篇
  • [js]用JAVASCRIPT正则表达式限制文本字节数的代码
  • PHP和javascript常用正则表达式及用法实例
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • HTML网页中的javaScript自动跳转方法介绍及javaScript自动跳转代码示例
  • Javascript 游戏引擎 cocos2d javascript
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • JavaScript的OAuth开发包 OAuth in JavaScript
  • javascript 添加到收藏夹和书签代码示例
  • Javascript 调试插件
  • javascript eval换成document.write 显示原型
  • JavaScript图表 JScharts
  • 通过javascript库JQuery实现页面跳转功能代码
  • JavaScript 开发环境 UltraREPL
  • 数据库 iis7站长之家
  • JavaScript 模板引擎 templayed.js
  • JavaScript实现页面跳转的几种方法(参考代码)
  • Pretty Beautiful Javascript
  • JavaScript中的消息框(警告框,确认框,提示框)语法
  • JavaScript 微处理器 Espruino
  • JavaScript InfoVis Toolkit
  • JavaScript 调试工具 JSDT
  • JavaScript图表组件 dhtmlxChart
  • javascript矩阵运算库 Sylvester
  • JavaScript开发插件 JSEclipse




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3