VB.NET 文字列を操作するサンプル

VB.NETの文字列を操作するサンプルです。

確認環境
・Microsoft Visual Studio Community 2019

目次

文字列を結合する(+演算子)

文字列を結合するサンプルです。

Module Module1
    Sub Main()

        'リテラル文字列を結合
        Console.WriteLine("あ" + "い") 'あいと出力される

        '変数の値を結合
        Dim a As String = "う"
        Dim b As String = "え"

        Console.WriteLine(a + b) 'うえと出力される        
        Console.WriteLine(a + "お") 'うおと出力される
    End Sub
End Module

5行目は、+演算子で文字列のリテラルを結合しています。
11行目は、+演算子で変数どうしを結合しています。
12行目は、+演算子で変数とリテラルを結合しています。

指定した位置の文字を取得する(Substringメソッド)

指定した位置の文字を取得するサンプルです。

Module Module1
    Sub Main()
        Dim a As String = "あいうえお"

        '文字を取得
        Console.WriteLine(a.Substring(0, 1)) 'あと出力される
        Console.WriteLine(a.Substring(1, 1)) 'いと出力される
        Console.WriteLine(a.Substring(2, 1)) 'うと出力される

        Console.WriteLine(a.Substring(0, 2)) 'あいと出力される
        Console.WriteLine(a.Substring(1, 2)) 'いうと出力される
    End Sub
End Module

Substringメソッドの1つめの引数は、開始位置です。
2つめの引数は取得する文字数です。
最初の文字の位置は 0 です。

文字の位置を返す(InStrメソッド)

文字の位置を返すサンプルです。

Module Module1
    Sub Main()
        Dim a As String = "あいうabc"

        Console.WriteLine(InStr(a, "い")) '2と出力される
        Console.WriteLine(InStr(a, "b")) '5と出力される
        Console.WriteLine(InStr(a, "か")) '0と出力される
    End Sub
End Module

5,6行目は、InStrメソッドで1つめの文字列に対して2つめの引数の文字の位置を返します。
最初の文字は、1から始まります。(0ではありません)
7行目は、対象の文字列に指定の文字がありません。その場合は0が返ります。

文字列の始め/終わりを確認する(Like演算子)

文字列の始めまたは終わりを確認するサンプルです。

Module Module1
    Sub Main()
        Dim a As String = "あいうabc"

        Console.WriteLine(a Like "あ*") 'Trueと出力される
        Console.WriteLine(a Like "あ") 'Falseと出力される

        Console.WriteLine(a Like "*bc") 'Trueと出力される
        Console.WriteLine(a Like "bc") 'Falseと出力される
    End Sub
End Module

5行目は、Likeで「あ」から始まる文字列か確認しています。Trueになります。「あ」の後にアスタリスク(*)が必要です。
6行目は、「あ」の後にアスタリスクがないのでFalseになります。
8行目は、Likeで「bc」で終わる文字列か確認しています。Trueになります。「bc」の前にアスタリスク(*)が必要です。
9行目は、「bc」の前にアスタリスクがないのでFalseになります。

数値(Integer)を文字列にする(ToStringメソッド)

数値(Integer)を文字列にするサンプルです。

Module Module1
    Sub Main()
        Dim a As Integer = 12345
        Console.WriteLine(VarType(a)) '3(Integer)が出力される

        Console.WriteLine(VarType(a.ToString)) '8(String)が出力される
    End Sub
End Module

6行目は、ToStringメソッドで数値を文字列にしています。
VarTypeメソッドはデータ型を調べることができます。

文字列を数値(Integer)にする(Parseメソッド)

文字列を数値(Integer)にするサンプルです。

Module Module1
    Sub Main()
        Dim a As String = "12345"
        Console.WriteLine(VarType(a)) '8(String)が出力される

        Console.WriteLine(VarType(Integer.Parse(a))) '3(Integer)が出力される
    End Sub
End Module

6行目は、Parseメソッドで文字列を数値にしています。
VarTypeメソッドはデータ型を調べることができます。

英字の大文字と小文字を変換(ToUpper/ToLowerメソッド)

英字の大文字と小文字を変換するサンプルです。

Module Module1
    Sub Main()
        Dim a As String = "ABCabcあいう"

        Console.WriteLine(a.ToUpper) 'ABCABCあいうと出力される

        Console.WriteLine(a.ToLower) 'abcabcあいうと出力される
    End Sub
End Module

3行目は、英字の大文字と小文字と全角文字があります。
5行目は、ToUpperメソッドで英字の小文字を大文字にしています。全角文字は変わっていません。
7行目は、ToLowerメソッドで英字の大文字を小文字にしています。全角文字は変わっていません。

文字列の先頭と末尾の空白を取り除く(Trimメソッド)

文字列の先頭と末尾の空白を取り除くサンプルです。

Module Module1
    Sub Main()
        Dim a As String = " ABCabc "

        Console.WriteLine(a.Trim) '前後の半角空白を削除

        Console.WriteLine(a.TrimStart) '先頭の半角空白を削除

        Console.WriteLine(a.TrimEnd) '末尾の半角空白を削除
    End Sub
End Module

3行目は、文字列の前後に半角空白があります。
5行目は、Trimメソッドで文字列の前後の空白を削除しています。
7行目のTrimStartは先頭の半角空白を削除します。
9行目のTrimEndは末尾の半角空白を削除します。

文字列がnullまたは空文字か確認する(IsNullOrEmptyメソッド)

文字列がnullまたは空文字か確認するサンプルです。

Module Module1
    Sub Main()

        Dim a As String = Nothing 'null
        Dim b As String = ""

        If String.IsNullOrEmpty(a) Then
            Console.WriteLine("nullです") 'nullですと出力される 
        End If

        If String.IsNullOrEmpty(b) Then
            Console.WriteLine("空です") '空ですと出力される 
        End If

    End Sub
End Module

4行目は、変数にNothingをセットしています。nullです。
5行目は、空文字をセットしています。
7,11行目はそれぞれIsNullOrEmptyメソッドで判定しています。該当するのでTrueが返ります。

文字列の長さを取得する(Lengthメソッド)

文字列の長さを取得するサンプルです。

Module Module1
    Sub Main()
        Dim a As String = "あいうabc"
        Console.WriteLine(a.Length) '6と出力される

        Dim b As String = ""
        Console.WriteLine(b.Length) '0と出力される
    End Sub
End Module

4行目は、Lengthで文字列の長さを取得しています。
7行目のように空文字のときは0が返ります。

文字を繰り返す

文字を繰り返すサンプルです。

Module Module1
    Sub Main()
        Dim a As New String("あ", 3)
        Console.WriteLine(a) 'あああと出力される

        Dim b As String = String.Empty
        For i = 0 To 2
            b += "い"
        Next i
        Console.WriteLine(b) 'いいいと出力される
    End Sub
End Module

3行目は、Stringクラスのコンストラクタで1つめの引数の文字を2つめの引数の数だけ繰り返します。
6~10行目は、For文で文字を繰り返して表示しています。

関連の記事

VB.NET for文のサンプル(Exit/Continue)

△上に戻る