用javascript从网页源码中提取收集含指定特征的所有的数字串,分别组成数组。
访问某个网页,查看它的源代码,其中包含很多以下代码句,但是数字串不相同,括号内的数字串长度不一定相同,<DIVclass=r><Ahref="javascript:ado...
访问某个网页,查看它的源代码,其中包含很多以下代码句,但是数字串不相同,括号内的数字串长度不一定相同,
<DIV class=r><A href="javascript:adodkr(1111,2221);"
......(省略源码,其中也有其它数字串存在,但是没有“javascript:adodkr”特征)
<DIV class=r><A href="javascript:adodkr(1112,2222);"
现需要用javascript从网页提取收集所有的这些代码句中的数字串,把括号前面的数字串存放到一个数组A中,把括号后面的数字串存放到另一数组B中。数组长度不确定,随收集到的多少而定。
即期望结果类似以下:
结果数组A(1111,1112,........)
结果数组B(2221,2222,........)
求高手指教,加注释!感激万分...... 展开
<DIV class=r><A href="javascript:adodkr(1111,2221);"
......(省略源码,其中也有其它数字串存在,但是没有“javascript:adodkr”特征)
<DIV class=r><A href="javascript:adodkr(1112,2222);"
现需要用javascript从网页提取收集所有的这些代码句中的数字串,把括号前面的数字串存放到一个数组A中,把括号后面的数字串存放到另一数组B中。数组长度不确定,随收集到的多少而定。
即期望结果类似以下:
结果数组A(1111,1112,........)
结果数组B(2221,2222,........)
求高手指教,加注释!感激万分...... 展开
展开全部
没有 “javascript:adodkr” 特征不符合下面的 regex
var str =
'<DIV class=r><A href="javascript:adodkr(1111,2221);">1</A></DIV>' +
'<DIV class=r><A href="javascript:adodkr(1112,2222);">2</A></DIV>' +
'<DIV class=r><A href="javascript:adodkr(1113,2223);">3</A></DIV>' +
'<DIV class=r><A href="javascript:adodkr(1114,2224);">4</A></DIV>' +
'<DIV class=r><A href="javascript:adodkr(1115,2225);">5</A></DIV>';
// 初始化两个数组
var arr1 = [], arr2 = [];
// 查找并替换,regex 规律为
// javascript:adodkr -> 左括号 -> 4位数 -> 逗号 -> 四位数 -> 右括号 -> 分号
str.replace(/javascript:adodkr\((\d{4}),(\d{4})\);/ig,
// p1 为前四位数字,p2 为后四位数字
function(m, p1, p2) {
// 分别添加到 arr1 和 arr2 中
arr1.push(p1);
arr2.push(p2);
});
// ["1111", "1112", "1113", "1114", "1115"]
alert(arr1);
// ["2221", "2222", "2223", "2224", "2225"]
alert(arr2);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询