c# - सी#एक और स्ट्रिंग द्वारा एक स्ट्रिंग विभाजित करें




.net string (6)

उपर्युक्त उत्तर सभी सही हैं। मैं एक कदम आगे जाता हूं और स्ट्रिंग पर एक विस्तार विधि को परिभाषित करके सी # काम करता हूं:

public static string[] Split(this string toSplit, string splitOn) {
    return toSplit.Split(new string[] { splitOn }, StringSplitOptions.None);
}

इस तरह से मैं इसे किसी भी स्ट्रिंग पर सरल तरीके से कॉल कर सकता हूं जिसे मैंने पहली बार उम्मीद की थी कि मैंने इसे पूरा करने की कोशिश की थी:

"a big long string with stuff to split on".Split("g str");

मैं तारों को विभाजित करने के लिए Split() विधि का उपयोग कर रहा हूं, लेकिन यदि आप किसी चरित्र द्वारा स्ट्रिंग को विभाजित कर रहे हैं तो यह केवल काम करने लगता है। string को विभाजित करने का कोई तरीका है, पैरामीटर द्वारा विभाजित एक और स्ट्रिंग के साथ? मैंने बिना किसी किस्मत के स्प्लिटर को एक चरित्र सरणी में बदलने की कोशिश की है।

दूसरे शब्दों में, मैं string को विभाजित करना चाहता हूं:

THExxQUICKxxBROWNxxFOX

xx द्वारा, और मानों के साथ एक सरणी वापस करें:

द क्विक ब्राउन फ़ॉक्स


एक स्ट्रिंग द्वारा विभाजित करने के लिए आपको स्ट्रिंग सरणी अधिभार का उपयोग करना होगा।

string data = "THExxQUICKxxBROWNxxFOX";

return data.Split(new string[] { "xx" }, StringSplitOptions.None);


स्प्लिट का अधिभार होता है जो स्ट्रिंग लेता है।

"THExxQUICKxxBROWNxxFOX".Split(new [] { "xx" }, StringSplitOptions.None);

आप इनमें से किसी भी स्ट्रिंगस्प्लिटऑप्शन का उपयोग कर सकते हैं

  • कोई नहीं - वापसी मूल्य में सरणी तत्व शामिल होते हैं जिनमें खाली स्ट्रिंग होती है
  • RemoveEmptyEntries - वापसी मान में सरणी तत्व शामिल नहीं होते हैं जिनमें खाली स्ट्रिंग होती है

तो यदि स्ट्रिंग "ThexxQUICKxxxxBROWNxxFOX" है, तो StringSplitOptions.None "xxxx" भाग के लिए सरणी में एक खाली प्रविष्टि StringSplitOptions.RemoveEmptyEntries जबकि StringSplitOptions.RemoveEmptyEntries नहीं होगा।


Regex.Split(string,"xx")

जिस तरह से मैं इसे आमतौर पर करता हूं। बेशक आपको एक की आवश्यकता होगी

using System.Text.RegularExpressions;

लेकिन फिर से मुझे हर समय उस lib की जरूरत है।


string data = "THExxQUICKxxBROWNxxFOX";

return data.Replace("xx","|").Split('|');

बस प्रतिस्थापित चरित्र को सावधानी से चुनें (वह चुनें जो स्ट्रिंग में पहले से मौजूद होने की संभावना नहीं है)!







split