1

私は次のコードを持っています:

$.get(TASK_FILE, function(data) {
    lines = data.split("\n");
    var place = /@[\S]*/g
    var category = /\+[\S]*/g
    lin = []
    for(line in lines)
    {
    var str = lines[line]
    var res = category.exec(str)
    console.log(res)
        if(res != null) 
    {
        str = str.replace(place, "");
        //lin[res[0]] = str;
    }

    }

    var res = category.exec("Czytanie +rosyjski @komunikacja @podrecznik")
    console.log(res)

TASK_FILEは、以下を含むテキストファイルのURLです。

Zadania z fizyki +mFizyka @dom
Czytanie +rosyjski @komunikacja @podrecznik

ご覧のとおり、「+ something」を含むファイルのリストを取得し、これをvarに保存したいのですが、firebugの出力には本当に驚いています。 ここに画像の説明を入力してください

ファイルの最初の行は正しく処理されますが、次の行は正しく処理されません。私は何が間違っているのですか?

4

1 に答える 1

3

(グローバル)フラグをmakesgと組み合わせて使用​​すると、最後の一致の最後から検索が続行されます。もちろん、その間に検索対象を切り替えると、これにより異常が発生する可能性があります。代わりに、文字列の関数を使用してください。execexecmatch

str.match(category);
于 2013-01-04T18:39:21.513 に答える