-3

これは file1 です:

file1
include file2;

これは file2 です:

file2
include file3;

これは file3 です:

file3
include file4;

これは file4 です:

file4

最終結果は次のようになります。

file1
file2
file3
file4

これの何が問題なのですか?

function recurse(data, callback) {
    if (data.match(/include(.*)\;/)) {
        var fn = data.match(/include(.*)\;/)[1];
        var filetxt = readfile(fn);
        recurse(filetxt, callback);
    } else {
        callback(data);
    }
}
var txt = recurse(readfile('file1'), function(s) {
    console.log(s);
})
4

1 に答える 1

2

正規表現を次のように変更します

/include (.*)\;/

一致グループが"fileN"代わりにキャッチするようにします" fileN"(先頭のスペースに注意してください)。

于 2012-11-28T21:00:11.060 に答える