ノードJSで正規表現一致を実行するにはどうすればよいですか?
var http = require('http');
var fs = require('fs');
var extfs = require('extfs');
var exec = require('child_process').execSync;
var url = require('url');
const PORT=8282;
function handleRequest(request, response){
var regex = fs.readFileSync('./output.txt', 'utf8');
var res = regex.match(/<.*class='.*(post-title).*>\n.*</g);
response.end(res);
}
var server = http.createServer(handleRequest);
server.listen(PORT, function(){
console.log("Server listening on: http://localhost:%s", PORT);
});
以上実行している時に、私が確認するためにhttps://regex101.com/で私の正規表現をテストしてみたポート8282.
でリスニング一時的なWebサーバを起動します私のノードJSのWebサーバですそれは適切に一致することができます。
私の問題は、私がGET要求を行うとき、私のWebサーバがクラッシュすると、私が手にエラーが最初の引数は、私はこれが得たノードJSとresponse.end(res)
の非同期性によるものであることを理解文字列またはバッファでなければならないです上記の行が完了する前にまず実行してください。
これを修正する方法がわかりません。どんな提案も大歓迎です。
を返すということですか? – Jan
以前はパーサを使っていませんでした。どのように動作するのか教えてください。私は実用的な例が素晴らしいでしょう。 –