zukucode
主にWEB関連の情報を技術メモとして発信しています。

VB.NET 文字列を連結する便利な方法まとめ

VB.NETで文字列を連結します。

VB.NETでは文字列の連結は文字列同士を&で結合できます。

Dim str1 As String = "連結を"
Dim str2 As String = "します。"

Dim str3 As String = str1 & str2 '連結をします。

&の代わりに+でも可能ですが、数値型の場合は足し算として扱われてしまうので基本的には&を使用することをおすすめします。

文字列補間

Visual Studio 2015からの新機能として文字列補間が可能になりました。

以下のように、文字列の"の前に$をつけることにより、文字列の中に変数をそのまま埋め込むように指定できます。

JavaScriptのテンプレートリテラルなどと同じような機能です。

Dim str1 As String = "連結を"
Dim str2 As String = "します。"

Dim str3 As String = $"str1は「{str1}」で、str2は「{str2}」です。" 'str1は「連結を」で、str2は「します。」です。

今までは複雑な文字列連結にはString.Formatなどを使用することが多かったですが、この機能を使えばコードもかなりシンプルになり、可読性も向上します。

StringBuilder

For文などで文字列を何度も連結するのはパフォーマンスがよくありません。

そのようなときはStringBuilderを使用します。

Dim sb As New StringBuilder

sb.Append("連結を")
sb.Append("します。")

Dim str3 As String = sb.ToString() '連結をします。

改行コードを自動でセット

StringBuilderSQL文を動的に組み立てていくときなどによく使用しますが、組み立てたSQL文をデバッグ時に抽出したいとき、1行の文字列ではなく、改行コードが入っていたほうがSQLもわかりやすくなります。

Appendの部分をAppendLineにすれば、改行コードが自動でセットされます。

Dim sb As New StringBuilder

sb.AppendLine("連結を")
sb.AppendLine("します。")

Dim str3 As String = sb.ToString()
'連結を
'します。

関連記事