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() '連結をします。改行コードを自動でセット
StringBuilderはSQL文を動的に組み立てていくときなどによく使用しますが、組み立てたSQL文をデバッグ時に抽出したいとき、1行の文字列ではなく、改行コードが入っていたほうがSQLもわかりやすくなります。
Appendの部分をAppendLineにすれば、改行コードが自動でセットされます。
Dim sb As New StringBuilder
sb.AppendLine("連結を")
sb.AppendLine("します。")
Dim str3 As String = sb.ToString()
'連結を
'します。