文字列関数 (Visual Basic)

Visual Basic で、文字列の検索と操作のために Microsoft.VisualBasic.Strings クラスに用意されている関数の一覧を次の表に示します。 これらは Visual Basic 組み込み関数と見なすことができます。つまり、例に示すように、クラスの明示的なメンバーとしてそれらを呼び出す必要はありません。 System.String クラスでは、追加のメソッド、および場合によっては補完的メソッドを使用できます。

.NET Framework メソッド 説明
AscAscW 文字に対応する文字コードを表す Integer 値を返します。
ChrChrW 指定された文字コードに対応する文字を返します。
Filter 指定されたフィルター条件に基づいた文字列 (String) 配列のサブセットを含むゼロ ベースの配列を返します。
Format 書式指定文字列 (String) 式に含まれる指示に従って書式設定された文字列を返します。
FormatCurrency システムの [コントロール パネル] で定義されている通貨記号を使って通貨形式の文字列に書式設定して返す文字列処理関数です。
FormatDateTime 日時の値を表す文字列式を返します。
FormatNumber 数値形式の文字列に書式設定して返す文字列処理関数です。
FormatPercent パーセント記号 (%) が付加されたパーセント形式 (100 で乗算した) の文字列に書式設定して返す文字列処理関数です。
InStr ある文字列の中から指定した文字列を検索し、最初に見つかった文字列の開始位置を示す整数型の値を返します。
InStrRev ある文字列の中から指定された文字列を最後の文字位置から検索を開始し、最初に見つかった文字位置 (先頭からその位置までの文字数) を返します。
Join 配列に含まれる多数の部分文字列を結合して作成される文字列を返します。
LCase 小文字に変換した文字列または文字を返します。
Left 指定された文字数を含む文字列を返します。
Len 文字列内の文字数を含む整数を返します。
LSet 指定の文字列が含まれている文字列を左寄せで指定の長さに調整して返します。
LTrim 指定された文字列から、先頭の空白を除いたコピーを格納する文字列を返します。
Mid 文字列から指定された文字数分の文字列を返します。
Replace 指定された文字列の一部を指定された回数分別の部分文字列で置換した文字列を返します。
Right 文字列の右端から指定された文字数分の文字列を返します。
RSet 文字列と長さが指定され、その長さに調整された文字列右揃えにして文字列を返します。
RTrim 指定された文字列から、末尾の空白を除いたコピーを格納する文字列を返します。
Space 指定された数のスペースから成る文字列を返します。
Split 部分文字列ごとに区切られた文字列からゼロ ベースの 1 次元配列を作成し、返します。
StrComp 文字列比較の結果により、-1、0、または 1 のいずれかを返します。
StrConv 指定に従って変換された文字列型の値を返します。
StrDup 指定された文字が指定された回数繰り返されている文字列型またはオブジェクト型の値を返します。
StrReverse 指定された文字列の文字の並び順を逆にした文字列を返します。
Trim 指定された文字列から、先頭または末尾の空白を除いたコピーを格納する文字列を返します。
UCase 指定された文字列を大文字に変換して文字列型または char 型の値を返します。

Option Compare ステートメントを使用して、文字列の比較方法を設定できます。比較方法は、システムのロケールで決定される、大文字と小文字を区別しないテキストの並べ替え順序 (Text)、または文字の内部バイナリ表現 (Binary) です。 既定のテキスト比較方法は Binary です。

例:UCase

UCase 関数を使って文字列を大文字に変換して返す例を次に示します。

' String to convert.
Dim lowerCase As String = "Hello World 1234"
' Returns "HELLO WORLD 1234".
Dim upperCase As String = UCase(lowerCase)

例:LTrim

この例では、文字列変数から、LTrim 関数を使って先頭の空白を除去し、RTrim 関数を使って後続の空白を除去しています。 また、Trim 関数を使って両方のタイプの空白を除去しています。

' Initializes string.
Dim testString As String = "  <-Trim->  "
Dim trimString As String
' Returns "<-Trim->  ".
trimString = LTrim(testString)
' Returns "  <-Trim->".
trimString = RTrim(testString)
' Returns "<-Trim->".
trimString = LTrim(RTrim(testString))
' Using the Trim function alone achieves the same result.
' Returns "<-Trim->".
trimString = Trim(testString)

例:Mid

Mid 関数を使って、文字列から指定された字数を返す例を次に示します。

' Creates text string.
Dim testString As String = "Mid Function Demo"
' Returns "Mid".
Dim firstWord As String = Mid(testString, 1, 3)
' Returns "Demo".
Dim lastWord As String = Mid(testString, 14, 4)
' Returns "Function Demo".
Dim midWords As String = Mid(testString, 5)

例:Len

Len 関数を使って文字列の文字数を返す例を次に示します。

' Initializes variable.
Dim testString As String = "Hello World"
' Returns 11.
Dim testLen As Integer = Len(testString)

例:InStr

InStr 関数を使って、ある文字列の中から指定された文字列を検索し、最初に見つかった文字位置を返す例を次に示します。

' String to search in.
Dim searchString As String = "XXpXXpXXPXXP"
' Search for "P".
Dim searchChar As String = "P"

Dim testPos As Integer
' A textual comparison starting at position 4. Returns 6.
testPos = InStr(4, searchString, searchChar, CompareMethod.Text)

' A binary comparison starting at position 1. Returns 9.
testPos = InStr(1, SearchString, SearchChar, CompareMethod.Binary)

' If Option Compare is not set, or set to Binary, return 9.
' If Option Compare is set to Text, returns 3.
testPos = InStr(searchString, searchChar)

' Returns 0.
testPos = InStr(1, searchString, "W")

例:形式

Format の書式指定とユーザー定義の書式指定の両方を使って値の書式を指定する、String 関数のさまざまな使用例を次に示します。 日付の区切り記号 (/)、時刻の区切り記号 (:)、および午前/午後を示す文字 (t および tt) について、システムで実際に表示される書式は、コードが使用するロケール設定によって決まります。 時刻と日付を開発環境で表示する場合は、コード ロケールの短い時刻書式と短い日付書式が使用されます。

Note

24 時間制を使用するロケールでは、午前/午後を示す記号 (t および tt) では何も表示されません。

Dim testDateTime As Date = #1/27/2001 5:04:23 PM#
Dim testStr As String
' Returns current system time in the system-defined long time format.
testStr = Format(Now(), "Long Time")
' Returns current system date in the system-defined long date format.
testStr = Format(Now(), "Long Date")
' Also returns current system date in the system-defined long date 
' format, using the single letter code for the format.
testStr = Format(Now(), "D")

' Returns the value of testDateTime in user-defined date/time formats.
' Returns "5:4:23".
testStr = Format(testDateTime, "h:m:s")
' Returns "05:04:23 PM".
testStr = Format(testDateTime, "hh:mm:ss tt")
' Returns "Saturday, Jan 27 2001".
testStr = Format(testDateTime, "dddd, MMM d yyyy")
' Returns "17:04:23".
testStr = Format(testDateTime, "HH:mm:ss")
' Returns "23".
testStr = Format(23)

' User-defined numeric formats.
' Returns "5,459.40".
testStr = Format(5459.4, "##,##0.00")
' Returns "334.90".
testStr = Format(334.9, "###0.00")
' Returns "500.00%".
testStr = Format(5, "0.00%")

関連項目