佚名通过本文主要向大家介绍了正则表达式,正则表达式提取数字,数字 正则表达式,html正则表达式,java正则表达式等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题:新人学正则表达式,请教问题
描述:
解决方案1:这段html固定不变的话,不用正则表达也可,要拿第2,3列的数据使用
描述:
如何用正则表达式只获取里面的:中国式A123c和16级。这两个数据
代码如下:
<tr>
<td align="center">1</td>
<td align="center"><a href="/vul/profile/uid/2640776" ajax-href="/user/showuserpro/uid/2640776">中国式A123c</a>
</td>
<td align="center">16级</td>
<td align="center"> 无名团伙 </td>
</tr>
解决方案1:
题主你的要求还真是奇怪,那我就满足你这个奇怪的要求好了。
首先获取 <td>
标签最内层的文字:
var str = '<tr><td align="center">1</td><td align="center"><a href="/vul/profile/uid/2640776" ajax-href="/user/showuserpro/uid/2640776">中国式A123c</a></td><td align="center">16级</td><td align="center"> 无名团伙 </td></tr>';
var reg = /<td(?: [^>]*)>(?:<[^>]*>)*([^<]*)(?:<\/[^>]*>)*<\/td>/gm;
var texts = [];
var result = null;
while(result = reg.exec(str)) {
texts.push(result[1]);
}
console.log(texts); // ["1", "中国式A123c", "16级", " 无名团伙 "]
这样题主想要哪个都可以啦!
解决方案2:正则
">([\s\S]*?)</a></td>
">中国</a></td>
"center">([\s\S]*?)</td>
<td align="center"> 无名团伙 </td>
解决方案3:如果说针对
$('tr td')[1].value();//$('tr td')需要你自己去精确定位
$('tr td')[2].value();