2016-08-08 7 views
0

私はこの次のjavascript変数を持っています。文字列変数の文字の前に少数の文字を挿入します(JavaScript)

var data = "ashley, andy, juana" 

iこのように表示する必要があります。

var data = "Sports_ashley, Sports_andy, Sports_juana" 

本質的に動的である必要があります。任意の数のコンマがこの変数に存在する可能性があります。

誰かが私にこれを達成するための簡単な方法を教えてもらえますか?

+1

このISNを使用して,のすべての出現や文字列の先頭を置き換えるために正規表現を使用します人々にあなたの宿題をさせるサイト。試しにコードを表示した場合は、「誰かが私のためにこれを行うことができますか?」より具体的な質問をしてください。 – Justin

答えて

2

.replaceを使用すると、各カンマの前にスポーツを追加する必要があります。以下に例を挙げました。代わりに、ちょうど最初の発生のSports,と全てコンマを置換するgフラグで正規表現を使用して、その例で

var data = data.replace(/,/g , ", Sports_"); 

最後に、最後にSportsを追加できるようにする必要があります。

おそらく
data = "Sports_" + data; 
+0

信頼できるリファレンスとしてW3Schoolを使用しないでください。 – 4castle

+0

@ 4castleどのような理由がありますか? –

+0

それはしばしば間違っていて、詳細には入りません。 – 4castle

2

行き過ぎが、ここでは一般的なソリューションです

function sportify(data) { 
 
    return data 
 
    .split(/\s*,\s*/g) //splits the string on any coma and also takes out the surrounding spaces 
 
    .map(function(name) { return "Sports_" + name }) //each name chunk gets "Sport_" prepended to the end 
 
    .join(", "); //combine them back together 
 
    } 
 

 
console.log(sportify("ashley, andy, juana")); 
 
console.log(sportify("ashley , andy,  juana"));

String.replace()

Array.map()

Array.join()

EDIT:OPの新しいバージョンで

2

を更新String#replace()

var input = "ashley, andy, juana" 
 
var output = input.replace(/^|,\s*/g, "$&Sports_"); 
 
console.log(output);

+0

@ 4castle-ありがとう。私は少し質問を更新しました。あなたは追い払うことができますか?それを得る方法を教えてください – Patrick

+1

@パトリック今更新されています。知らせてくれてありがとうございます。 – 4castle

+0

@ 4castle-あなたのコードでSports_ashley、andy、juanaを出力しています。 – Patrick

関連する問題