Back to Top

プログラムの覚書

Category: 文字列

VB.NET 文字列の先頭・末尾の指定文字を削除する

文字列の先頭または末尾にある指定文字を削除する方法を説明します。

文字の削除には、String.Trim メソッドを使用します。

Dim str As String = "A.,:; 12345 .,:;A"

'先頭と末尾の".,:;A"文字を削除する
Dim s1 As String = str.Trim("."c, ","c, ":"c, ";"c, "A"c)
'または
Dim s1 As String = str.Trim(New Char() {"."c, ","c, ":"c, ";"c, "A"c})


'先頭の".,:;A"文字を削除する
Dim s2 As String = str.TrimStart("."c, ","c, ":"c, ";"c, "A"c)
'または
Dim s2 As String = str.TrimStart(New Char() {"."c, ","c, ":"c, ";"c, "A"c})


'末尾の".,:;A"文字を削除する
Dim s3 As String = str.TrimEnd("."c, ","c, ":"c, ";"c, "A"c)
'または
Dim s3 As String = str.TrimEnd(New Char() {"."c, ","c, ":"c, ";"c, "A"c})

※あと正規表現にて削除する方法もあります。

 

VB.NET 文字列内の文字列を削除する

文字列中の指定位置から文字数だけ文字を削除する方法を説明します。

文字列を削除するには、幾つかの方法があり、処理速度等が異なります。

String.Remove メソッドによる方法

Dim str As String = "ABCDE12345"

'6文字目から2文字削除する
Dim s1 As String = str.Remove(5, 2)

'6文字目から最後まで削除する
Dim s2 As String = str.Remove(5)

 

String.Substring メソッドによる方法

Dim str As String = "ABCDE12345"

'先頭から5文字を削除する(6文字以降取得する)
Dim s1 As String = str.Substring(5)

'6文字目から最後まで削除する(1文字目から5文字取得する)
Dim s2 As String = str.Substring(0, 5)

※Substringは削除と考えるよりは、指定位置から指定個数取得すると考えたほうが分かりやすい。

 

StringBuilder.Remove メソッドによる方法

Dim str As String = "ABCDE12345"

Dim sb As New System.Text.StringBuilder(str)

'先頭から5文字を削除する
sb.Remove(0, 5)
Dim s1 As String = sb.ToString()