VB.NET Substring 文字列を切り出す

VB.NETの文字列を切り出すサンプルです。

目次

サンプル 文字列の一部を切り出す(引数2つ)
  文字列の途中から最後までを切り出す(引数1つ)
  文字列の後ろから切り出す(Length)
  左から文字列を切り出す(Left)
  右から文字列を切り出す(Right)

文字列の一部を切り出す(引数2つ)

Public Function Substring (開始位置 , 長さ) As String
  • 1つめの引数は、文字を切り出す「開始位置」です。
  • 2つめの引数は、文字の「長さ」です。
  • 最初の1文字目の位置は0です。
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)) 'いうと出力される

		Dim b As String = "abcde"
		Console.WriteLine(b.Substring(0, 1)) 'aと出力される
		Console.WriteLine(b.Substring(1, 1)) 'bと出力される
	End Sub
End Module

5~7行目は、指定の位置から1文字取得しています。
9行目は、最初の文字「あ」から2文字取得しています。
10行目は、途中にある文字の「い」から2文字取得しています。
12行目は、半角文字の場合です。

 

文字列の途中から最後までを切り出す(引数1つ)

Public Function Substring (開始位置) As String

1つめの引数の開始位置から最後までの文字を返します。

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

		Console.WriteLine(a.Substring(1)) 'いうえおと出力される
		Console.WriteLine(a.Substring(2)) 'うえおと出力される
		Console.WriteLine(a.Substring(3)) 'えおと出力される
		Console.WriteLine(a.Substring(4)) 'おと出力される
	End Sub
End Module

 

文字列の後ろから切り出す(Length)

Lengthプロパティで文字列の長さを取得し、そこから引くことで後ろから文字列を取得します。

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

		Console.WriteLine(a.Substring(a.Length - 1)) 'おと出力される
		Console.WriteLine(a.Substring(a.Length - 2)) 'えおと出力される
		Console.WriteLine(a.Substring(a.Length - 3)) 'うえおと出力される
	End Sub
End Module

 

左から文字列を切り出す(Left)

Leftは2つめの引数の数値分を左から切り出します。

Module Module1
	Sub Main()
		Dim a As String = "あいうえお"
		Console.WriteLine(Strings.Left(a, 1)) 'あ
		Console.WriteLine(Strings.Left(a, 2)) 'あい
		Console.WriteLine(Strings.Left(a, 3)) 'あいう

		Dim b As String = "abcde"
		Console.WriteLine(Strings.Left(b, 1)) 'a
		Console.WriteLine(Strings.Left(b, 2)) 'ab
		Console.WriteLine(Strings.Left(b, 3)) 'abc
	End Sub
End Module

 

右から文字列を切り出す(Right)

Rightは2つめの引数の数値分を右から切り出します。

Module Module1
	Sub Main()
		Dim a As String = "あいうえお"
		Console.WriteLine(Strings.Right(a, 1)) 'お
		Console.WriteLine(Strings.Right(a, 2)) 'えお
		Console.WriteLine(Strings.Right(a, 3)) 'うえお

		Dim b As String = "abcde"
		Console.WriteLine(Strings.Right(b, 1)) 'c
		Console.WriteLine(Strings.Right(b, 2)) 'cd
		Console.WriteLine(Strings.Right(b, 3)) 'cde
	End Sub
End Module

関連の記事

VB.NET 文字列の始まり/終わりを確認(StartsWith/EndsWith)
VB.NET 文字列の位置を取得(IndexOf/LastIndexOf)

△上に戻る