次の方法で共有


方法: Visual Basic で文字列を文字の配列に変換する

文字列内の文字や文字列内のそれらの文字の位置に関するデータ (文字列の解析時など) があると便利な場合があります。 この例では、文字列の ToCharArray メソッドを呼び出すことによって、文字列内の文字の配列を取得する方法を示します。

例 1

この例では、文字列を Char 配列に分割する方法と、文字列を Unicode テキスト文字の String 配列に分割する方法を示します。 この区別の理由は、Unicode テキスト文字は、2 つ以上の Char 文字 (サロゲート ペアや結合文字シーケンスなど) で構成できることです。 詳細については、「 TextElementEnumeratorUnicode 標準」を参照してください。

Dim testString1 As String = "ABC"
' Create an array containing "A", "B", and "C".
Dim charArray() As Char = testString1.ToCharArray

例 2

文字列を Unicode テキスト文字に分割することはより困難ですが、文字列の視覚的表現に関する情報が必要な場合は、これが必要です。 この例では、 SubstringByTextElements メソッドを使用して、文字列を構成する Unicode テキスト文字に関する情報を取得します。

' This string is made up of a surrogate pair (high surrogate
' U+D800 and low surrogate U+DC00) and a combining character 
' sequence (the letter "a" with the combining grave accent).
Dim testString2 As String = ChrW(&HD800) & ChrW(&HDC00) & "a" & ChrW(&H300)

' Create and initialize a StringInfo object for the string.
Dim si As New System.Globalization.StringInfo(testString2)

' Create and populate the array.
Dim unicodeTestArray(si.LengthInTextElements - 1) As String
For i As Integer = 0 To si.LengthInTextElements - 1
    unicodeTestArray(i) = si.SubstringByTextElements(i, 1)
Next

こちらも参照ください