Ich möchte Greasemonkey verwenden, um Wiki-Daten von Last.fm abzurufen (dies ist nicht möglich, mit deren REST api). Ich kann die Seite gut mit GM_xmlhttpRequest() abrufen, und es ist richtig zurück.
Ich möchte keinen DOM-Prozessor verwenden, um die gesamte Seite zu verarbeiten, da ich nur einen kleinen Teil haben möchte, also verwende ich reguläre Ausdrücke.
Die Wikidaten sind auf der Seite wie:
<div id="wiki">
description
description
...
</div>
Also schrieb ich:
/\<div id="wiki"\>(.+)\<\/div\>/m.exec(data)[1];
Wenn ich dies in der Fehlerkonsole teste (wo die mehreren Zeilen in eine einzige Zeile geglättet werden), funktioniert es, aber auf der Seite schlägt es fehl und sagt
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
Ich vermute, dass dor im Mehrzeilenmodus nicht mit neuen Zeilen übereinstimmt, was ich auch erwartet hatte. Wie bringe ich ihn dazu, jedes Zeichen einschließlich Zeilenumbrüchen zu erkennen?