.NET Dize sınıfı için bir uzantı yöntemi yazmak istiyorum. Split yönteminde özel bir varation olmasını isterim - ayırıcıdan önce bir kaçış karakteri kullanıldığında dizgenin bölünmesini önlemek için bir kaçış karakteri alır.C# Uzantı Yöntemi - Dize Bölmesi de bir Kaçış Karakteri kabul eder
Bunu yazmanın en iyi yolu nedir? Ona yaklaşmanın en iyi non-regex yolu hakkında merak ediyorum. Bir imza gibi olan
şey ...
public static string[] Split(this string input, string separator, char escapeCharacter)
{
// ...
}
GÜNCELLEME: bu birinde
C#olmayan özel kaçan karakterleri yorum, önceleniminin ... geldi Çünkü Alacağınız hata - CS1009: Tanınmayan çıkış dizisi.
IE JScript'te, çıkış karakterleri atılıyor. Eğer denemediyseniz ve sonra "Beklenen bir onaltılı rakam" hatası alırsınız. Firefox'u test ettim ve aynı davranışı var.
Bu yöntemin güzel bir bağışlayıcı olmasını ve JavaScript modelini izlemesini istiyorum. Bir ayırıcıdan kaçarsanız, kaçış karakterini "nazikçe" kaldırmalıdır.
Görünüşe göre kaçış karakterinin görüntülendiği her zaman ayırıcı dizgenin izlediği varsayılıyor. Ya değilse? – tvanfosson
Sadece soruda olana gidiyorum - ayırma karakterinin ayırıcıdan önce ortaya çıkması durumunda, ayırıcının ayırma için kullanılmasını önlemelidir. Kaçış karakterini kaldırmaya veya başka bir şekilde işlemeye çalışmıyorum. Naif, belki, ama sahip olduğumuz tüm bilgiler bu. –
cool, bir dizi dizisi döndürmek için ienumberable yararı nedir? – rizzle