2009-06-16 18 views
6

उदाहरण का उपयोग करते हुए सी # कर सकते हैं: एक - बी - सी ए और बी के रूप में विभाजित किया जाना चाहिए - 3 सबस्ट्रिंगमैं कैसे केवल एक बार स्ट्रिंग विभाजित

+0

यह अद्भुत 1000 सवाल "प्रोग्रामिंग" मैं सिर्फ कितने quesitons पता लगाना जाना पड़ा थे टैग "प्रश्न" और कुछ हैं !! @ जोन: एफवाईआई, एसओ हमेशा प्रोग्रामिंग के बारे में है, गैर प्रोग्रामिंग प्रश्नों को जल्द ही बंद कर दिया जाएगा। – AnthonyWJones

+0

... लेकिन केवल 15 प्रश्न "प्रश्न" टैग किए गए हैं;) – Guffa

+0

Get'em टैग-नाज़ी! :) –

उत्तर

17

के बजाय, सी है कि आप चाहते हैं आइटम की अधिकतम संख्या निर्दिष्ट करें:

string[] splitted = text.Split(new string[]{" - "}, 2, StringSplitOptions.None); 
+1

ऐसा कोई अधिभार नहीं है। –

+3

हां, वहाँ है .. – Guffa

+0

क्षमा करें, मुझे कुछ गलत तरीके से पढ़ना होगा। –

12
string s = "a - b - c"; 
string[] parts = s.Split(new char[] { '-' }, 2); 
// note, you'll still need to trim off any whitespace 
2

आप जिस चरित्र को विभाजित करना चाहते हैं उसके पहले उदाहरण को खोजने के लिए indexOf() का उपयोग कर सकते हैं, फिर दो पहलुओं को प्राप्त करने के लिए substring()। उदाहरण के लिए ...

int pos = myString.IndexOf('-'); 
string first = myString.Substring(0, pos); 
string second = myString.Substring(pos); 

यह एक मोटा उदाहरण है - आप इसके साथ खेलने के लिए की आवश्यकता होगी, तो आप नहीं है विभाजक वर्ण वहाँ में चाहते हैं - लेकिन आप इस से विचार प्राप्त करना चाहिए।

1
string[] splitted = "a - b - c".Split(new char[]{' ', '-'}, 2, StringSplitOptions.RemoveEmptyEntries); 
0
var str = "a-b-c"; 
int splitPos = str.IndexOf('-'); 
string[] split = { str.Remove(splitPos), str.Substring(splitPos + 1) }; 
-1

मैं देर से शामिल हो गए हैं और मेरे इन शब्दों के साथ ऊपर जवाब में से कई मिलान किया जाता है:

स्ट्रिंग का अपना

स्प्लिट

है आप इसका उपयोग कर सकते हैं आपकी समस्या का समाधान खोजने के लिए, निम्न में एक ही आपकी समस्या के अनुसार उदाहरण है: टैग किया

using System; 

public class Program 
{ 
    public static void Main() 
    { 
     var PrimaryString = "a - b - c"; 
     var strPrimary = PrimaryString.Split(new char[] { '-' }, 2); 
     Console.WriteLine("First:{0}, Second:{1}",strPrimary[0],strPrimary[1]); 

    } 
} 

Output: 
First:a , Second: b - c 
+0

यह आपको निम्नलिखित '[ए, बी, सी] 'के साथ एक सरणी देगा और' [ए, बी-सी] 'नहीं। इसके अलावा गलत भाषा। –

+0

धन्यवाद @ जैमीआर इसे उद्धृत करने के लिए। मैंने अपना जवाब सही किया। –

संबंधित मुद्दे