开发者社区> netwild> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

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

简介: 该问题在使用Ajax远程获取某网页数据时经常遇见 如果目标页面是XML,就好办了,实用XMLDOM可以很轻松完成任务。 不过我要面对的是一个很松散的HTML页面,无法XML 因此,本文的重点在于如果要获取的网页中有Table或List段落,需要将这些段落的信息按照列的方式保存到JS的数组中 ...
+关注继续查看

该问题在使用Ajax远程获取某网页数据时经常遇见

如果目标页面是XML,就好办了,实用XMLDOM可以很轻松完成任务。

不过我要面对的是一个很松散的HTML页面,无法XML

因此,本文的重点在于如果要获取的网页中有Table或List段落,需要将这些段落的信息按照列的方式保存到JS的数组中

直接贴代码:

 

 

 1 var str = "字符串字符串<table><tr><th>ID</th><th>姓名</th><th>电话</th></tr><tr><td>01</td><td>张三</td><td>1234567</td></tr><tr><td>02</td><td>李四</td><td>343434</td></tr><tr><td>03</td><td>王五</td><td>685654</td></tr></table>字符串字符串";   
 2  var regRecord = new RegExp('\\<tr>\\<td>([0-9]{2})\\<\\/td\\>\\<td>([^\\<]+)\\<\\/td\\>\\<td>([0-9]+)\\<\\/td\\>\\<\\/tr\\>','g');   
 3   
 4  var fieldIndex = { 'Id' : 1 , 'Name' : 2 , 'Phone' : 3 }   
 5   
 6  var g_records = [],record;   
 7  while ((record = regRecord.exec(str)) != null){   
 8     g_records.push({   
 9         'Id' : RegExp["$"+fieldIndex.Id]   
10         ,'Name' : RegExp["$"+fieldIndex.Name]   
11         ,'Phone' : RegExp["$"+fieldIndex.Phone]   
12     });   
13 }   
14 //此时 g_records 就保存了匹配的数据表格,打印出来看看:   
15 for(var i=0;i<g_records.length;i++){   
16     alert("ID:" + g_records[i].Id + ";Name:" + g_records[i].Name + ";Phone:" + g_records[i].Phone);   
17 }  

 

 


宠辱不惊,看庭前花开花落;去留无意,望天上云卷云舒

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
JS实现正则表达式
一、创建正则表达式    一共有两种方式:       1.直接量:var re = /[0-9]*/;       2.通过RegExp对象的构造函数:var re = RegExp("[0-9]*","i"); 二、RegExp中正则表达式的属性与方法,以及String中常用的匹配字符串的方法   1.RegExp():构造函数,有两个参数,第一个参数是正则表达式,第二个参数是表示使用什么样的模式来匹配。
751 0
JS日期时间加减实现
首先,上代码 1 var diffDate = function(date, diff) { 2 return new Date( 3 Date.
762 0
jquery-barcode:js实现的条码打印
这是一个纯js的jQuery插件,项目地址:http://barcode-coder.com/en/barcode-jquery-plugin-201.html 使用示例: 1 doctype html> 2 3 4 jQuery Barcode ...
1185 0
ToolTip效果通过Js实现代替超链接中的title
View Code  1 DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 2  3  4     自定义Tooltip特效 5      6         body ul 7         { 8       ...
900 0
Js实现网站常用的评分效果!
View Code DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">    网站评分特效            *        {            font-size: 50px;        }     ...
718 0
Js实现动态更改Css样式之土豆网开/关灯效果!
 1 DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 2  3  4     开关灯效果 5      6         body 7         { 8             background: #FFF; 9         }10         .
788 0
js操作的跨域问题:js实现自动设置框架载入页面高度的问题
*{border:0px; margin:0px; padding:0px;}首页   function setHeight(){  var iframe = document.getElementById("middle");     try{       var aHeight = iframe.
747 0
Asp.net+Xml+js实现无线级下拉菜单
地址如下:http://xucanzhao.cnblogs.com/archive/2005/09/01/228012.htmlAsp.net+Xml+js实现无线级下拉菜单
569 0
+关注
netwild
入行十多年,编程变成了习惯。 主攻Java / Web相关,主要作品JWinner快速开发框架。 其他的。。。戒烟中。。。
78
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载