C # stringbaşka bir bölmek istiyorsanız stringben böyle bir şey yapmak zorunda:
testString.Split(new string[] { "anotherString" }, StringSplitOptions.None);
Aşırı yüklenmiş String.SplitMSDN Dokümantasyonundan uygulamayı ve neden böyle bir çağrı yapılması gerektiğini görebiliriz.
Python'dan geliyor, böyle bir çağrının neden gerekli olduğunu doğru bir şekilde anlamak benim için zor. Yani Regex.SplitPython uygulamasından benzer bir sözdizimi elde etmek için kullanabilirsiniz ama basit bir şey için daha az performans (kurulum süresi) pahasına bunu yapmak zorunda kalacaktı .
Yani temelde sorum şu: Niye yapamıyoruz?
testString.Split("anotherString");
Herhangi bir prototip veya uygulama önermediğimi unutmayın. Mevcut API'yı dikkate alarak yukarıdaki sürümü neden uygulayamadığınızı anlıyorum. Amacım, yukarıdaki sözdiziminin getirdiği fayda göz önüne alınarak böyle bir API'nin neden oluşturulduğunu anlamaktı. Şu an itibariyle, esneklikString.Split mantıklı olan akımın hedefi gibi görünüyor , ama dürüst olmak gerekirse bir yerlerde bir tür performans kazancı olduğunu düşündüm. Sanırım yanılmışım.
testString.Split(",.;");ve testString.Split(new Char [] {',', '.', ';',);bunlar aynı şey değil.
IEnumerable<char>böylece önerdiğiniz ek prototip bazı durumlarda belirsiz görünebilir (tüm dizeyle sınırlandırıyor musunuz veya karakterlerinin her biri ile sınırlanıyor musunuz?) Sadece bir tahmin.
testString.Split("anotherString");, beklenen davranışın tüm dize ( anotherStringbu durumda) sınırlamak olduğunu söylemek oldukça eminim .