Javascript 匹配多行模式

Javascript 匹配多行模式,javascript,regex,greasemonkey,Javascript,Regex,Greasemonkey,我想使用greasemonkey从Last.fm中刮取wiki数据(这在他们的RESTAPI中是不可能的)。我可以用GM_xmlhttpRequest()很好地抓取页面,并且它正在正确返回 我不想使用DOM处理器来处理整个页面,因为我只需要一小块,所以我使用正则表达式 页面中的wiki数据如下所示: <div id="wiki"> description description ... </div> 描述 描述 ... 于是我写道: /\<div id="w

我想使用greasemonkey从Last.fm中刮取wiki数据(这在他们的RESTAPI中是不可能的)。我可以用GM_xmlhttpRequest()很好地抓取页面,并且它正在正确返回

我不想使用DOM处理器来处理整个页面,因为我只需要一小块,所以我使用正则表达式

页面中的wiki数据如下所示:

<div id="wiki">
description

description
...
</div>

描述
描述
...
于是我写道:

/\<div id="wiki"\>(.+)\<\/div\>/m.exec(data)[1];
/\(.+)\/m.exec(数据)[1];
当我在错误控制台中测试这一点时(在错误控制台中,多行被展平为一行),它可以工作,但在页面上失败并显示

Error: /\<div id="wiki"\>(.+)\<\/div\>/m.exec(data) is null
Source File: file:///home/jeff/.mozilla/firefox/x4su9596.default/extensions/%7Be4a8a97b-f2ed-450b-b12d-ee082ba24781%7D/components/greasemonkey.js
Line: 357
错误:/\(.+)\/m.exec(数据)为空
源文件:file:///home/jeff/.mozilla/firefox/x4su9596.default/extensions/%7Be4a8a97b-f2ed-450b-b12d-ee082ba24781%7D/components/greasemonkey.js
电话:357

我猜多行模式不会使dor匹配新行,这是我所期望的。如何使其匹配任何字符,包括换行符?

尝试(.*)而不是(+++)

点与javascript中的新行不匹配——这是js正则表达式风格的一个怪癖


[^]
应该起作用(例如“除了绝对没有以外的一切”)

试试
[\s\s]
,因为
[^]
在IE8中不起作用