新人学正则表达式,请教问题


382b0e55b319ebc4c71301f58426cffc1e171608.jpg

如何用正则表达式 只获取 里面的:中国式A123c和16级。这两个数据

代码如下:


 <tr style="background-color: rgb(208, 215, 231);">
               <td align="center">1</td>
               <td align="center"><a href="/vul/profile/uid/2640776" class="loading_userpro" ajax-href="/user/showuserpro/uid/2640776">中国式A123c</a>
               </td>

               <td align="center">16级</td>
                <td align="center"> 无名团伙 </td>

</tr>

正则表达式 javascript正则

Mr.Rex 9 years, 5 months ago

题主你的要求还真是奇怪,那我就满足你这个奇怪的要求好了。

首先获取 <td> 标签最内层的文字:


 var str = '<tr style="background-color: rgb(208, 215, 231);"><td align="center">1</td><td align="center"><a href="/vul/profile/uid/2640776" class="loading_userpro" 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级", " 无名团伙 "]

这样题主想要哪个都可以啦!

╅木偶戏↖。 answered 9 years, 5 months ago

  1. 正则


 ">([\s\S]*?)</a></td>
">中国</a></td>

"center">([\s\S]*?)</td>
<td align="center"> 无名团伙 </td>

绝对魔女34号 answered 9 years, 5 months ago

如果说针对

这段html固定不变的话,不用正则表达也可,要拿第2,3列的数据使用

 
  $('tr td')[1].value();//$('tr td')需要你自己去精确定位
$('tr td')[2].value();
 

Amaris answered 9 years, 5 months ago

Your Answer