玄関へお回り下さい。
String クラスの文字列処理関係のメソッドその2 (11個)      (SNo.005)
Replace   このインスタンスに出現するUnicode文字又はStringをすべて別に指定した文字に置換る
Split    配列内で指定された文字で区切られた部分文字列を識別し、その文字列を配列に格納します
StartsWith  このインスタンスの先頭が、指定した String と一致するかどうかを判断します
String    指定した文字を指定数分作成した文字列を返す
Substring  部分文字列を取得する(左から3文字を取得。左から3文字目から3文字を取得。右から3文字を取得)
ToCharArray このインスタンスの文字を Unicode 文字配列へコピーします
ToLower   小文字で構成される String のコピーを返します
ToUpper    大文字で構成される String のコピーを返します
Trim     このインスタンスの先頭と末尾で指定された文字が連続している場合すべて削除します
TrimEnd   このインスタンスの末尾から、配列で指定された文字セットをすべて削除します
TrimStart  このインスタンスの先頭から、配列で指定された文字セットをすべて削除します
使用コントロール Button13  〜 Button23
その他条件 WindowsXP(Vista) Visual Basic 2005(VB2008)
 
 String.Replace メソッド

Private Sub Button13_Click(ByVal sender As System.Object, _
                           
ByVal e As System.EventArgs) Handles Button13.Click
    'String.Replace メソッド    [名前空間: System]
    'このインスタンスに出現する指定 Unicode 文字または String をすべて、
    '別に指定した Unicode 文字または String に置換します。
   
Dim str1 As String = "AB CD EF"
    Debug.WriteLine(str1.Replace(" ", ",")) 
'結果  AB,CD,EF
End Sub

 String.Split メソッド

Private Sub Button14_Click(ByVal sender As System.Object, _
                           ByVal e As System.EventArgs) Handles Button14.Click
'String.Split メソッド      [名前空間: System]
   'このインスタンス内で、配列内で指定された 1 つ以上の文字で区切られた部分文字列を
   '識別し、次にこの部分文字列を String 配列に格納します。
   Dim str1 As String = "〒555-0011滋賀県滋賀県彦根市 城町 1-15滋賀県草柳  強"
   Dim strTmp() As String = str1.Split("滋賀県")
   For i As Integer = strTmp.GetLowerBound(0) To strTmp.GetUpperBound(0)
      Debug.WriteLine(strTmp(i))
   Next i

   '結果   〒555-0011            '1文字でしか分割されない 
   '       賀県                  'vbCrLf や ControlChars.NewLine も2文字になるので注意
   '       賀県彦根市 城町 1-15
   '       賀県草柳  強
'---------------------------------------------------------------------------------------------
'String.Split メソッドで1文字以上のセパレーターを指定する場合
   Dim sp(0) As String
   sp(0) = "滋賀県"  '配列で指定する必要がある
  'strTmp = str1.Split(sp, StringSplitOptions.None)                  '空データも返す
   strTmp = str1.Split(sp, StringSplitOptions.RemoveEmptyEntries)    '空データは返さない
   For i As Integer = strTmp.GetLowerBound(0) To strTmp.GetUpperBound(0)
      Debug.WriteLine(strTmp(i))
   Next i
   '結果   〒555-0011            '空データは返さない
   '       彦根市 城町 1-15
   '       草柳  強
End Sub

 String.StartsWith メソッド

Private Sub Button15_Click(ByVal sender As System.Object, _
                           ByVal e As System.EventArgs) Handles Button15.Click
'String.StartsWith メソッド     [名前空間: System]
   'このインスタンスの先頭が、指定した String と一致するかどうかを判断します。
   '文字列の先頭と一致するかまたは Empty である場合は true 。それ以外の場合は false 。
   Dim s As String = "ABCあいう"
   Debug.WriteLine(s.StartsWith("ABC"))    '結果  True
   Debug.WriteLine(s.StartsWith("A"))      '結果  True
   Debug.WriteLine(s.StartsWith("a"))      '結果  False

   'String.StartsWith メソッド (String, StringComparison) 
   '指定された比較オプションを使って比較した場合に、この文字列の先頭が、
   '指定された文字列と一致するかどうかを判断します。 
   'このメソッドは、.NET Framework version 2.0 で新しく追加されたものです。 
   'StringComparison 列挙体 は下記参照。


   '大文字・小文字を区別しないで比較します。
   
Debug.WriteLine(s.StartsWith("a", StringComparison.OrdinalIgnoreCase))      '結果  True
End Sub

 String

Private Sub Button16_Click(ByVal sender As System.Object, _
                           ByVal e As System.EventArgs) Handles Button16.Click
'String コンストラクター (Char, Int32)    [名前空間: System]
   'String クラスの新しいインスタンスを初期化し、指定した回数だけ
   '繰り返した指定の Unicode 文字が示す値に設定します。
   Dim str1 As New System.String("ABC", 10)
   Debug.WriteLine(str1)       '結果  AAAAAAAAAA

   str1 = New System.String("ABCDEFGHI", 2, 5)
   Debug.WriteLine(str1)       '結果  CDEFG
End Sub

★ String.Substring メソッド

Private Sub Button17_Click(ByVal sender As System.Object, _
                           ByVal e As System.EventArgs) Handles Button17.Click
'String.Substring メソッド      [名前空間: System]
    'インスタンスから部分文字列を取得します。
    Dim str1 As String = "ABC123あいう"
    '左から3文字を取得
    Debug.WriteLine(str1.Substring(0, 3))                   '結果  ABC
    '左から3文字目から3文字を取得
    Debug.WriteLine(str1.Substring(3, 3))                   '結果  123
    '右から3文字を取得
    Debug.WriteLine(str1.Substring(str1.Length - 3, 3))     '結果  あいう
End Sub

Private Sub Button18_Click(ByVal sender As System.Object, _
                           
ByVal e As System.EventArgs) Handles Button18.Click
'String.ToCharArray メソッド    [名前空間: System]
    'このインスタンスの文字を Unicode 文字配列へコピーします。
   
Dim str1 As String = "012wあyz789"
   
Dim arr() As Char
    '上記文字列の3個目から4文字を配列にコピーします
    arr = str1.ToCharArray(3, 4)
   
Dim c As Char
   
For Each c In arr
        Debug.WriteLine(c)
   
Next c
    '   結果    w
    '           あ
    '           y
    '           z
End Sub

Private Sub Button19_Click(ByVal sender As System.Object, _
                           
ByVal e As System.EventArgs) Handles Button19.Click
'String.ToLower メソッド    [名前空間: System]
    '小文字で構成される String のコピーを返します。
   
Dim str1 As String = "AbcdEFGhiJK"
    Debug.WriteLine(str1.ToLower)       
'結果  abcdefghijk
End Sub

Private Sub Button20_Click(ByVal sender As System.Object, _
                           
ByVal e As System.EventArgs) Handles Button20.Click
'String.ToUpper メソッド    [名前空間: System]
    '大文字で構成される String のコピーを返します。
   
Dim str1 As String = "AbcdEFGhiJK"
    Debug.WriteLine(str1.ToUpper)       
'結果  ABCDEFGHIJK
End Sub

★ String.Trim メソッド

Private Sub Button21_Click(ByVal sender As System.Object, _
                           ByVal e As System.EventArgs) Handles Button21.Click
'String.Trim メソッド   [名前空間: System]
    'このインスタンスの先頭と末尾で、指定された文字が 1 つ以上連続している場合、
    '指定された文字をすべて削除します。
    Dim str1 As String = "  ABCDEFG   "
    Debug.WriteLine("[" & str1.Trim & "]")  '結果  [ABCDEFG]
    Debug.WriteLine("AAAABCAAA".Trim("A"))  '結果  BC
End Sub

Private Sub Button22_Click(ByVal sender As System.Object, _
                           
ByVal e As System.EventArgs) Handles Button22.Click
'String.TrimEnd メソッド   [名前空間: System]
    'このインスタンスの末尾から、配列で指定された文字セットをすべて削除します。
   
Dim str1 As String = "  ABCDEFG   "
    Debug.WriteLine("[" & str1.TrimEnd & "]") 
'結果  [ ABCDEFG]
    Debug.WriteLine("AAAABCAAA".TrimEnd("A")) 
'結果  AAAABC
End Sub

★ String.TrimStart メソッド

Private Sub Button23_Click(ByVal sender As System.Object, _
                           ByVal e As System.EventArgs) Handles Button23.Click
'String.TrimStart メソッド   [名前空間: System]
    'このインスタンスの先頭から、配列で指定された文字セットをすべて削除します。
    Dim str1 As String = "  ABCDEFG   "
    Debug.WriteLine("[" & str1.TrimStart & "]")  '結果  [ABCDEFG ]
    Debug.WriteLine("AAAABCAAA".TrimStart("A"))  '結果  BCAAA
End Sub

StringComparison 列挙体

CurrentCulture               カルチャに依存した並べ替え規則および現在のカルチャを使用して
                             文字列を比較します。 

CurrentCultureIgnoreCase     カルチャに依存した並べ替え規則および現在のカルチャを使用し、
                             比較対象の文字列の大文字と小文字の違いは無視して文字列を比較します。 

InvariantCulture             カルチャに依存した並べ替え規則およびインバリアント カルチャを
                             使用して文字列を比較します。 

InvariantCultureIgnoreCase   カルチャに依存した並べ替え規則およびインバリアント カルチャを
                             使用し、比較対象の文字列の大文字と小文字の違いは無視して文字列を
                             比較します。 

Ordinal                      序数の並べ替え規則を使用して文字列を比較します。 

OrdinalIgnoreCase            序数の並べ替え規則を使用し、比較対象の文字列の大文字と小文字の
                             違いは無視して文字列を比較します。 


Framework2.0 から追加されている機能が結構あります。
詳しくは、参考リンクやヘルプをご覧下さい。




2004/05/21
2006/12/05


VBレスキュー(花ちゃん)
VB.NET2003  VB2005