2017-03-08 8 views
0

私は文字列str:str2:str3を持っていて、次の要素を持つ文字列の配列を取得したいとします。['str', 'str:str2', 'str:str2:str3']どのようにJavaScriptのはしごのような文字列を分割するには?

これを行うにはどのような方法が最適ですか?

+0

'スプリット()。)(参加'使用することができます。 – Jai

+0

あなたはどんなアプローチを試みましたか? –

+0

例を挙げることができますか?私は最良のソリューションを探していますが、私はこの作業を 'split'と' join'だけで解決する方法を知らない。私は、正規表現によってこの問題を解決するのに役立つことが分かれるかもしれないと考えていました。 – xfg

答えて

1

文字列を':'で分割し、必要な部分で新しい配列を作成することができます。

var SEPARATOR = ':', 
 
    string = 'str:str2:str3', 
 
    temp = string.split(SEPARATOR), 
 
    result = temp.map(function (a, i, aa) { 
 
     return aa.slice(0, i + 1).join(SEPARATOR); 
 
    }); 
 

 
console.log(result);

0

文字列を分割し、インデックスに基づいて分割さアレイをスライスして要素を生成します。

console.log(
 
    'str:str2:str3' 
 
    .split(':') 
 
    .reduce(function(arr, v, i, spl) { 
 
    arr.push(spl.slice(0, i + 1).join(':')); 
 
    return arr; 
 
    }, []) 
 
);

関連する問題