2009-09-10 7 views
5

मैं हर जगह "" विभाजन करने की कोशिश कर रहा हूं, लेकिन यह मुझे खाली प्रविष्टियों को हटाने नहीं देगा और फिर लंबाई ढूंढने देगा, लेकिन इसे वाक्यविन्यास त्रुटि के रूप में माना जाता है।का उपयोग करना। खाली प्रविष्टियों को हटाने के लिए स्प्लिट

मेरे कोड:

TextBox1.Text.Split(" ", StringSplitOptions.RemoveEmptyEntries).Length 

क्या मैं गलत कर रहा हूँ?

+0

वाक्यविन्यास त्रुटि क्या है? – Ray

+0

मेरे लिए यहां कॉपी और पेस्ट करने के लिए बहुत लंबा, एक चरित्र – Cyclone

उत्तर

14

ठीक है, Split फ़ंक्शन के पहले पैरामीटर को स्ट्रिंग या वर्णों की सरणी होना आवश्यक है। आज़माएं:

TextBox1.Text.Split(New String() {" "}, StringSplitOptions.RemoveEmptyEntries).Length 

आपने यह पहले कभी नहीं देखा होगा जब आपने दूसरा पैरामीटर निर्दिष्ट नहीं किया था। ऐसा इसलिए है क्योंकि Split विधि में अधिभार होता है जो परमएरे में होता है। इसका मतलब है कि करने के लिए कॉल Split("string 1", "string 2", "etc") ऑटो जादुई के लिए एक कॉल में बदल Split(New String() {"string 1", "string 2", "etc"})

+1

के रूप में इलाज के बारे में कुछ सख्त होने पर संकलित नहीं होता है। – Steven

7

प्रयास करें:

TextBox1.Text.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries).Length 
2

यह मैं क्या किया है:

TextBox1.Text = "1 2 3 5 6" 
TextBox1.Text.Split(" ".ToCharArray(), StringSplitOptions.RemoveEmptyEntries).Length 

परिणाम: लंबाई = 5

1
// char array is used instead of normal char because ".Split()" 
// accepts a char array 
char[] c = new char[1]; 
//space character in array 
c[0] = ' '; 
// a new string array is created which will hold whole one line 
string[] Warray = Line.Split(c, StringSplitOptions.RemoveEmptyEntries); 
संबंधित मुद्दे