配列(Array)やリスト(List)に格納されている文字を、連結することは多々あります。
例えば、ファイルに配列の値を全て書き込みたいときや、デバッグ中に配列の全値をコンソールに出力したいときなどです。
そんな時は、「String.Join」を使えば簡単。
各値をつなぐ(連結する)区切り文字も指定できるので、すごく便利です。
String.Joinについて
「String.Join」はStringクラスのメソッドです。
「Join=加わる・入れる」という意味なので覚えすいですよね。配列の各要素をどんどん「Join(加える)」していく、というイメージです。
具体的にはこう書きます。
String.Join(区切り文字,配列やList)
区切り文字について
1つ目の引数の「区切り文字」には、好きな文字を指定できます。
配列なので「,」を使うことが一番多いですが、「・」や「_」なども使えます。また、改行コードを意味する「vbCrLf」も使えます。
{a,b,c}という配列があるとすると、
①「,」を指定→a,b,c
②「・」を指定→a・b・c
③「vbCrLf」を指定
→a
b
c
④""と指定(区切り文字はいらないという意味)→abc
UiPathで「String.Join」を使うには
UiPathではこんな風に使います。
実行すると、次の1行が出力されました。指定した区切り文字「,」でつないだ文字列が出力されています。
【補足】「String.Join」の他に「Strings.Join」もある
最後に、ちょっと難しい話を補足として紹介しておきます。難しい人は飛ばしてもらって大丈夫です。
ここまで紹介してきた「Strings.Join」の正体は、
System.String.Join
※Systemという名前空間の、Stringというクラスの、Joinというメソッド
というものでした。
ところが、ややこしいことに「Strings.Join」というものもありまして、
Microsoft.VisualBasic.Strings.Join
※Microsoft.VisualBasicという名前空間の、Stringsというクラスの、Joinというメソッド
というものがあるんです。
引数の順番が逆なので、そこだけ注意してください。
System.String.Join(区切り文字,配列)
Microsoft.VisualBasic.Strings.Join(配列,区切り文字)
実はどちらを使っても大丈夫なのですが、現場でよく見かけのは「System.String.Join」の方かなと思います。とりあえずこちらを覚えておけば問題ないです。