.NET'te Dizelerden Karakterleri Kırpma ve Kaldırma

Bir cümleyi tek tek sözcüklere ayrıştırıyorsanız, sözcüğün herhangi bir ucunda boşluk (boşluk olarak da anılabilir) olan sözcüklerle sonuçlanılabilir. Bu durumda, system.string sınıfındaki kırpma yöntemlerinden birini kullanarak dizede belirtilen bir konumdan herhangi bir sayıda boşluk veya diğer karakteri kaldırebilirsiniz. Aşağıdaki tabloda kullanılabilir kırpma yöntemleri açık almaktadır.

Yöntem adı Kullanın
String.Trim Bir karakter dizisinde belirtilen boşlukları veya karakterleri dizenin başından ve sonundan kaldırır.
String.TrimEnd Bir karakter dizisinde belirtilen karakterleri dizenin sonundan kaldırır.
String.TrimStart Bir karakter dizisinde belirtilen karakterleri dizenin başından kaldırır.
String.Remove Bir dizedeki belirtilen dizin konumundan belirtilen sayıda karakteri kaldırır.

Trim

Aşağıdaki örnekte gösterildiği gibi yöntemini kullanarak bir dizenin her iki ucundaki String.Trim boşlukları kolayca kaldırabilirsiniz.

String^ MyString = " Big   ";
Console::WriteLine("Hello{0}World!", MyString);
String^ TrimString = MyString->Trim();
Console::WriteLine("Hello{0}World!", TrimString);
// The example displays the following output:
//       Hello Big   World!
//       HelloBigWorld!        
string MyString = " Big   ";
Console.WriteLine("Hello{0}World!", MyString);
string TrimString = MyString.Trim();
Console.WriteLine("Hello{0}World!", TrimString);
//       The example displays the following output:
//             Hello Big   World!
//             HelloBigWorld!
Dim MyString As String = " Big   "
Console.WriteLine("Hello{0}World!", MyString)
Dim TrimString As String = MyString.Trim()
Console.WriteLine("Hello{0}World!", TrimString)
' The example displays the following output:
'       Hello Big   World!
'       HelloBigWorld!        

Bir karakter dizisinde belirttiğiniz karakterleri bir dizenin başından ve sonundan da kaldırebilirsiniz. Aşağıdaki örnek boşluk karakterlerini, nokta ve yıldız işaretlerini kaldırır.

using System;

public class Example
{
   public static void Main()
   {
      String header = "* A Short String. *";
      Console.WriteLine(header);
      Console.WriteLine(header.Trim( new Char[] { ' ', '*', '.' } ));
   }
}
// The example displays the following output:
//       * A Short String. *
//       A Short String
Module Example
    Public Sub Main()
        Dim header As String = "* A Short String. *"
        Console.WriteLine(header)
        Console.WriteLine(header.Trim({" "c, "*"c, "."c}))
    End Sub
End Module
' The example displays the following output:
'       * A Short String. *
'       A Short String

TrimEnd

String.TrimEnd yöntemi, bir dizenin sonundaki karakterleri kaldırır ve yeni bir dize nesnesi oluşturur. Kaldırılacak karakterleri belirtmek için bu yönteme bir karakter dizisi geçirildi. Karakter dizisinde öğelerin sırası kırpma işlemi etkilemez. Dizide belirtilmemiş bir karakter bulunursa kırpma durur.

Aşağıdaki örnek TrimEnd yöntemini kullanarak bir dizenin son harflerini kaldırır. Bu örnekte, karakter ve karakterin konumu, dizideki karakter sıralarının önemli olmadığını 'r' göstermek için ters 'W' çevrilir. Bu kodun ilk sözcüğün son MyString artı kısmını kaldıran bir kod olduğunu fark etme.

String^ MyString = "Hello World!";
array<Char>^ MyChar = {'r','o','W','l','d','!',' '};
String^ NewString = MyString->TrimEnd(MyChar);
Console::WriteLine(NewString);
string MyString = "Hello World!";
char[] MyChar = {'r','o','W','l','d','!',' '};
string NewString = MyString.TrimEnd(MyChar);
Console.WriteLine(NewString);
Dim MyString As String = "Hello World!"
Dim MyChar() As Char = {"r", "o", "W", "l", "d", "!", " "}
Dim NewString As String = MyString.TrimEnd(MyChar)
Console.WriteLine(NewString)

Bu kod He konsolda görüntülenir.

Aşağıdaki örnek TrimEnd yöntemini kullanarak bir dizenin son sözcüğü kaldırır. Bu kodda virgül sözcüğü takip eder ve kırpıla karakter dizisinde virgül belirtilmemiş olduğundan kırpma Hello virgülle biter.

String^ MyString = "Hello, World!";
array<Char>^ MyChar = {'r','o','W','l','d','!',' '};
String^ NewString = MyString->TrimEnd(MyChar);
Console::WriteLine(NewString);
string MyString = "Hello, World!";
char[] MyChar = {'r','o','W','l','d','!',' '};
string NewString = MyString.TrimEnd(MyChar);
Console.WriteLine(NewString);
Dim MyString As String = "Hello, World!"
Dim MyChar() As Char = {"r", "o", "W", "l", "d", "!", " "}
Dim NewString As String = MyString.TrimEnd(MyChar)
Console.WriteLine(NewString)

Bu kod Hello, konsolda görüntülenir.

TrimStart

String.TrimStart yöntemi, String.TrimEnd yöntemine benzer ancak mevcut bir dize nesnesinin başından karakterleri kaldırarak yeni bir dize oluşturur. Kaldırılacak karakterleri belirtmek için TrimStart yöntemine bir karakter dizisi geçirildi. TrimEnd yönteminde olduğu gibi, karakter dizisinde öğelerin sırası kırpma işlemi etkilemez. Dizide belirtilmemiş bir karakter bulunursa kırpma durur.

Aşağıdaki örnek bir dizenin ilk sözcüğüni kaldırır. Bu örnekte, karakter ve karakterin konumu, dizideki karakter sıralarının önemli olmadığını 'l' göstermek için ters 'H' çevrilir.

String^ MyString = "Hello World!";
array<Char>^ MyChar = {'e', 'H','l','o',' ' };
String^ NewString = MyString->TrimStart(MyChar);
Console::WriteLine(NewString);
string MyString = "Hello World!";
char[] MyChar = {'e', 'H','l','o',' ' };
string NewString = MyString.TrimStart(MyChar);
Console.WriteLine(NewString);
Dim MyString As String = "Hello World!"
Dim MyChar() As Char = {"e", "H", "l", "o", " "}
Dim NewString As String = MyString.TrimStart(MyChar)
Console.WriteLine(NewString)

Bu kod World! konsolda görüntülenir.

Kaldır

yöntemi, String.Remove mevcut bir dizede belirtilen konumda başlayan belirtilen sayıda karakteri kaldırır. Bu yöntem sıfır tabanlı bir dizin varsayıyor.

Aşağıdaki örnek, sıfır tabanlı bir dizinin beş konumundan başarak bir dizeden on karakteri kaldırır.

String^ MyString = "Hello Beautiful World!";
Console::WriteLine(MyString->Remove(5,10));
// The example displays the following output:
//         Hello World!        
string MyString = "Hello Beautiful World!";
Console.WriteLine(MyString.Remove(5,10));
// The example displays the following output:
//         Hello World!
Dim MyString As String = "Hello Beautiful World!"
Console.WriteLine(MyString.Remove(5, 10))
' The example displays the following output:
'         Hello World!        

Değiştir

Ayrıca, yöntemini çağırarak ve değiştirme olarak boş bir dize ( ) belirterek belirtilen karakteri veya alt String.Replace(String, String) String.Empty dizeyi dizeden kaldırebilirsiniz. Aşağıdaki örnek bir dizeden tüm virgülleri kaldırır.

using System;

public class Example
{
   public static void Main()
   {
      String phrase = "a cold, dark night";
      Console.WriteLine("Before: {0}", phrase);
      phrase = phrase.Replace(",", "");
      Console.WriteLine("After: {0}", phrase);
   }
}
// The example displays the following output:
//       Before: a cold, dark night
//       After: a cold dark night
Module Example
    Public Sub Main()
        Dim phrase As String = "a cold, dark night"
        Console.WriteLine("Before: {0}", phrase)
        phrase = phrase.Replace(",", "")
        Console.WriteLine("After: {0}", phrase)
    End Sub
End Module
' The example displays the following output:
'       Before: a cold, dark night
'       After: a cold dark night

Ayrıca bkz.