2011-10-21 19 views
5

त्यागने के लिए कैसे मैं एक पाठ बॉक्स जहाँ मैं के रूप मेंस्प्लिट स्ट्रिंग, खाली जगह भी स्ट्रिंग रिक्त स्ट्रिंग

"Two; [email protected];" 

string[] result = txt_to.Text.Split(';'); 

इनपुट दर्ज तो क्या यहाँ होता है परिणाम है तीन तार लेता है के रूप में माना जाता है। 1. दो 2. [email protected] 3. "" खाली जगह) क्योंकि वहां है; ईमेल के बाद यह मानता है कि एक स्ट्रिंग के रूप में मैं जो तीसरी स्ट्रिंग लेता हूं उसे छोड़ सकता हूं। ऐसा तब होता है जब मैं ईमेल और अर्धविराम दर्ज करता हूं और स्पेस बार दबाता हूं, यह एक त्रुटि फेंकता है। यदि अर्धविराम के बाद यह केवल स्थान है तो विभाजन को

उत्तर

12

मैं यह जोड़ रहा हूं कि आप स्ट्रिंग को कई तारों में विभाजित करना चाहते हैं, लेकिन किसी भी "खाली" तारों को छोड़ दें (जिनमें केवल व्हाइटस्पेस शामिल है))? This आपको मदद चाहिए ...

string[] result = txt_to.Text.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); 
6
var arr = mystring.Split(new string[]{";"}, StringSplitOptions.RemoveEmptyEntries); 
+0

+1 काम करेगा :-) – xanatos

+0

का उपयोग RemoveEmptyEntries भी एक स्थान निकाल सकता है हो सकता है? मैंने सोचा था कि यह सिर्फ स्ट्रिंग को हटाने के लिए था। लक्षण ... हालांकि इसका परीक्षण नहीं किया है। –

2

ऐसा लगता है कि मेरे लिए लग रहा है खाली स्ट्रिन को त्यागना समझ में आता है वैसे भी परिणाम से जीएस, न केवल अंत में। यदि यह मामला है, तो आप

char[] separators = new char[]{';'}; 
string[] result = txt_to.Text.Split(separators , StringSplitOptions.RemoveEmptyEntries); 
0
string s=txt_to.Text; 
s = s.Replace(" ", ""); 
string[] result = s.Split(';'); 
संबंधित मुद्दे