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

本文实例讲述了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程序设计有所帮助。

(0)

相关推荐

  • JavaScript中使用正则匹配多条,且获取每条中的分组数据

    不过我要面对的是一个很松散的HTML页面,无法XML 因此,本文的重点在于如果要获取的网页中有Table或List段落,需要将这些段落的信息按照列的方式保存到JS的数组中 直接贴代码: 复制代码 代码如下: var str = "字符串字符串<table><tr><th>ID</th><th>姓名</th><th>电话</th></tr><tr><td>01<

  • javascript下正则匹配百分比的代码

    <script language="javascript">     var re = /^-?\d+%$/;     alert(re.test('50%'));     alert(re.test('-25%'));     alert(re.test('3a5%')); </script>

  • js实现正则匹配中文标点符号的方法

    本文实例讲述了js正则匹配中文标点符号的方法.分享给大家供大家参考,具体如下: 运行效果截图如下: 具体代码如下: <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"> <title>js正则匹配中文标点符号</title> <head> <body> <input ty

  • javascript正则匹配汉字、数字、字母、下划线

    javascript正则检测只含有汉字.数字.字母.下划线不能以下划线开头和结尾 遇到一个用户名检测的的问题,查了一下,总结例子如下: 复制代码 代码如下: var reg = /^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$/;if (!reg.test(实际取值的字符串)) {    alert('请输入5-24位字符:支持中文.英文.数字."_",推荐使用中文');}

  • js正则匹配table tr

    我觉得比ijao简单,但是脑子就是转不过弯....请正则高手看看阿. 复制代码 代码如下: <textarea id="txt">  <table border=1 width="20%">                    <tr><th>title</th><th>title2</th></tr>             <tr rs="{id:\

  • js正则匹配出所有图片及图片地址src的方法

    本文实例讲述了js正则匹配出所有图片及图片地址src的方法.分享给大家供大家参考.具体分析如下: 有很多时候我们需要用到文章里面的图片,而且主要是用到它的图片地址,这个时候我们需要通过正则匹配出图片标签,然后做到我们需要的数据 平时也没怎么用正则,一不学就忘,最近项目需要,然后又去goole了,好乱!一搜一大堆,也不是我想要的,最后把自己留一个已被后用: 实现:通过js正则匹配出所有图片及所有图片地址src. 思路:1.匹配出图片img标签(即匹配出所有图片),过滤其他不需要的字符 从匹配出来的

  • 解决js正则匹配换行问题实现代码

    复制代码 代码如下: <div id="main"> <div id="left"> </div> <div id="right"> php </div> </div> 如果DIV内没有内容则不换行 把上面的改为: 复制代码 代码如下: <div id="main"> <div id="left"></di

  • javascript的正则匹配方法学习

    javascript中正则匹配有3个方法,match,exec,test.这些方法都跟字符串和RegExp对象有关,但使用场景不一样,容易混淆.match是字符串的一个方法,接收一个RegExp对象做为参数,其他的是RegExp对象的方法,接收一个字符串参数. var str = 'abcdef12ab34cd56ef'; var patt = new RegExp('ab'); //主意是非全局匹配 var ret_test = patt.test(str); console.log(ret_

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

    本文实例讲述了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 R

  • python解析json串与正则匹配对比方法

    现在有如下格式的json串: "detail_time":"2016-03-30 16:00:00","device_id":"123456","os":"Html5Wap","session_flow_id":"1d1819f3-8e19-4597-b50d-ba379adcd8e5","user_longitude":0.0

  • java针对电话号码正则匹配实例

    本文实例讲述了java针对电话号码正则匹配的方法.分享给大家供大家参考.具体如下: public interface RegExpConst { /** * 手机号码 * 移动:134[0-8],135,136,137,138,139,150,151,157,158,159,182,187,188 * 联通:130,131,132,152,155,156,185,186 * 电信:133,1349,153,180,189 */ String MOBILE = "^1(3[0-9]|5[0-35-

  • php与javascript正则匹配中文的方法分析

    本文实例讲述了php与javascript正则匹配中文的方法.分享给大家供大家参考,具体如下: php中正则匹配utf-8中文: (重点是:[\x{4e00}-\x{9fa5}]+) $str = "我们"; if (preg_match("/^[\x{4e00}-\x{9fa5}]+$/u",$str,$arr)) { print("该字符串全部是中文"); echo '<pre>'; print_r($arr); } else {

  • Java正则匹配中文的方法实例分析

    本文实例讲述了Java正则匹配中文的方法.分享给大家供大家参考,具体如下: 1.匹配双引号间内容: public void test1() { // 匹配双引号间内容 String pstr = "\"([^\"]+)\""; Pattern p = Pattern.compile(pstr); Matcher m = p.matcher("\"goodjob\""); System.out.println(m.fi

  • PHP正则匹配反斜杠'\'和美元'$'的方法

    本文实例讲述了PHP正则匹配反斜杠'\'和美元'$'的方法.分享给大家供大家参考,具体如下: 1. test.php: <?php $content = '1111111<td>2222222<\/td>3$'; //'\\\\\/' 第1个'\'转义字符串的第2个'\',字符串为'\' //第3个'\'转义第4个'\',相当于字符串'\' //第5个'\'转义第4个'/',相当于字符串'/' //字符合起来为'\\/' 两个'\\' 正则表达式看做'\' $pattern

  • php正则匹配html中带class的div并选取其中内容的方法

    本文实例讲述了php正则匹配html中带class的div并选取其中内容的方法.分享给大家供大家参考.具体分析如下: 先看一段html代码: 复制代码 代码如下: <div class="chartInfo">   <div class="line"></div>  <div class="tideTable">       <strong>潮汐表</strong>数据仅供参

  • JS正则匹配中文的方法示例

    本文实例讲述了JS正则匹配中文的方法.分享给大家供大家参考,具体如下: 需求:使用JS正则的方式将字符串 "[微笑][撇嘴][发呆][得意][流泪]" 中的汉字进行匹配输出. 示例代码: <script> var pattern1 = /[\u4e00-\u9fa5]+/g; var pattern2 = /\[[\u4e00-\u9fa5]+\]/g; var contents = "[微笑][撇嘴][发呆][得意][流泪]"; content = c

随机推荐