我需要从此页面获取此文本中的数据:http: //www.chess.com/home/game_archive?sortby=&show= echess&member=deckers1066
我似乎无法使用它。
var text = document.body;
var results = text.match(/id=[0-9]*>/g);
我需要抓住所有看起来像这样的事件
/echess/game?id=60942234
我对身份证号码更感兴趣
我需要从此页面获取此文本中的数据:http: //www.chess.com/home/game_archive?sortby=&show= echess&member=deckers1066
我似乎无法使用它。
var text = document.body;
var results = text.match(/id=[0-9]*>/g);
我需要抓住所有看起来像这样的事件
/echess/game?id=60942234
我对身份证号码更感兴趣
您的代码有两个问题;一个是您要搜索的字符串document.body.innerHTML
,另一个是 RegExp 正在寻找元素的结束标记,>
前面没有引号。试试这个
var results = document.body.innerHTML.match(/id=\d+/g);
注意我完全省略了结束标记,因为这个 RegExp 是贪婪的,这意味着你不必担心 HTML 解析。
请不要为此使用正则表达式。您应该使用适当的 DOM 解析器(几乎每种语言都有很多可用的解析器),然后使用它选择 ID。
如果您坚持使用正则表达式(我不建议这样做),那么 Paul S 的答案是最好的。