JavaScript使用RegExp进行正则匹配的方法


Posted in Javascript onJuly 11, 2015

本文实例讲述了JavaScript使用RegExp进行正则匹配的方法。分享给大家供大家参考。具体实现方法如下:

<script type="text/javascript">
  var matchedTimes = 0;
  //Match one d followed by one or more b's followed by one d
  //Remember matched b's and the following d
  //Ignore case
  myRe  = new RegExp("d(b+)(d)", "ig");
  // 等价于 myReg = /d(b+)(d)/ig;
  myArray = myRe.exec("ecDBDsdbbdz"); // ecdbBdbsdbbdz
  console.log("Regular Expression String: " + myRe.source);
  console.log("Is global? " + myRe.global);
  console.log("Ignore case? " + myRe.ignoreCase);
  console.log("Is mulitiline? " + myRe.multiline);
  console.log("------------------------------------------------");
  logInfo(myArray, myRe);
  myArray = myRe.exec("ecDBDsdbbdz");
  logInfo(myArray, myRe);
  function logInfo(myArray, myRe) {
    matchedTimes++;
    console.log("This is " + matchedTimes + " times match");
    console.log("Original String: " + myArray.input);
    console.log("Match Result Array: [" + myArray + "]");
    console.log("The 0-based index of the match in the string: " + myArray.index);
    console.log("The last matched characters: " + myArray[0]);
    console.log("The parenthesized substring matches [1]: " + myArray[1]);
    console.log("The parenthesized substring matches [2]: " + myArray[2]);
    console.log("The index at which to start the next match: " + myRe.lastIndex);
    console.log("-----------------------------------------------");
  }
  myRe2 = /^\w+(\d*)$/ig
  console.log("myRe2: " + myRe2.source);
  //console.log("myRe2 matches abc1? " + myRe2.test("abc1"));
  // 加上这行跑跑看结果,因为是global匹配,所以lastIndex会改变,
  //所以后面的myRe2.test("abc")当然就是false
  console.log("myRe2 matches abc? " + myRe2.test("abc"));
</script>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JavaScript实现禁止后退的方法
Dec 27 Javascript
使用JS获取当前地理位置方法汇总
Dec 18 Javascript
JS实现网页滚动条感应鼠标变色的方法
Feb 26 Javascript
js中函数声明与函数表达式
Jun 03 Javascript
jQuery+Pdo编写login登陆界面
Aug 01 Javascript
防止Node.js中错误导致进程阻塞的办法
Aug 11 Javascript
axios学习教程全攻略
Mar 26 Javascript
layui扩展上传组件模拟进度条的方法
Sep 23 Javascript
vue+elementUi 实现密码显示/隐藏+小图标变化功能
Jan 18 Javascript
vue路由切换时取消之前的所有请求操作
Sep 01 Javascript
Vue中登录验证成功后保存token,并每次请求携带并验证token操作
Sep 08 Javascript
Array.filter中如何正确使用Async
Nov 04 Javascript
javascript中JSON对象与JSON字符串相互转换实例
Jul 11 #Javascript
javascript实现下班倒计时效果的方法(可桌面通知)
Jul 10 #Javascript
JavaScript清空数组元素的两种方法简单比较
Jul 10 #Javascript
JavaScript实现的类字典插入或更新方法实例
Jul 10 #Javascript
JavaScript模板引擎用法实例
Jul 10 #Javascript
JavaScript实现打字效果的方法
Jul 10 #Javascript
javascript实现rgb颜色转换成16进制格式
Jul 10 #Javascript
You might like
Search Engine Friendly的URL设计
2006/10/09 PHP
ecshop 批量上传(加入自定义属性)
2012/03/20 PHP
php实现保存submit内容之后禁止刷新
2014/03/19 PHP
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
javascript 多级checkbox选择效果
2009/08/20 Javascript
jQuery获取地址栏参数插件(模仿C#)
2010/10/26 Javascript
如何获取JQUERY AJAX返回的JSON结果集实现代码
2012/12/10 Javascript
javascript实现跨域的方法汇总
2015/06/25 Javascript
轻松学习Javascript闭包函数
2015/12/15 Javascript
window.open打开窗口被拦截的快速解决方法
2016/08/04 Javascript
Bootstrap路径导航与分页学习使用
2017/02/08 Javascript
AngularJS中$http使用的简单介绍
2017/03/17 Javascript
基于jQuery实现图片推拉门动画效果的两种方法
2017/08/26 jQuery
vscode 开发Vue项目的方法步骤
2018/11/25 Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
2019/09/05 Javascript
JavaScript 面向对象基础简单示例
2019/10/02 Javascript
实例分析javascript中的异步
2020/06/02 Javascript
Vue如何实现监听组件原生事件
2020/07/03 Javascript
vue打开其他项目页面并传入数据详解
2020/11/25 Vue.js
简单谈谈Python中的几种常见的数据类型
2017/02/10 Python
Python3.4 splinter(模拟填写表单)使用方法
2018/10/13 Python
详解Numpy数组转置的三种方法T、transpose、swapaxes
2019/05/27 Python
简单了解python gevent 协程使用及作用
2019/07/22 Python
Mac安装python3的方法步骤
2019/08/09 Python
使用jupyter notebook直接打开.md格式的文件
2020/04/10 Python
PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译
2020/04/15 Python
详解Python 最短匹配模式
2020/07/29 Python
编码实现字符串转整型的函数
2012/06/02 面试题
Laravel的加密解密与哈希实例讲解
2021/03/24 PHP
单位未婚证明范本
2014/01/18 职场文书
大学生入党推荐书范文
2014/05/17 职场文书
道德演讲稿
2014/05/21 职场文书
骨干教师考核评语
2014/12/31 职场文书
小学科学教学计划
2015/01/21 职场文书
2015年语言文字工作总结
2015/07/23 职场文书
Nginx搭建rtmp直播服务器实现代码
2021/03/31 Servers