2014-06-06 93 views
0

我無法執行,其中我使用一個子上的字符串定義自定義定界符的操作,除去該字符串的前5個字符,然後由分割字符串分隔符。C# - 由分隔符刪除字符串的開頭,然後分裂

string delimiterString = numbers.Substring(2, 1); 
char delimiter = delimiterString[0]; 
string result[] = numbers.Remove(0, 5); 
result = numbers.Split(delimiter); 

我得到的錯誤是在第三行:Cannot implicitly convert type string[] to string.分割方法似乎時卸下想要一個字符串,我無法在兩者之間轉換需要一個字符數組。任何人都可以伸出援手嗎?

+0

你必須知道'string&string []' – MethodMan

回答

6

Split返回一個字符串數組(string []),而Remove返回一個字符串。您需要不同的變量來存儲這些值:

string delimiterString = numbers.Substring(2, 1); 
char delimiter = delimiterString[0]; 
string resultSource = numbers.Remove(0, 5); 
string[] result = resultSource.Split(delimiter); 

另請注意,您錯位了數組括號。您發佈的示例代碼不應編譯。

+0

因此在這種情況下,我需要將resultSource放入結果中,因爲我需要拆分的字符串是執行Remove之後的字符串。 – noclist

+0

@noclist示例代碼不正確 - 我的一個粗心的錯誤。我已糾正它。當然,你需要在resultSource上調用Split,而不是結果。 – phoog

+0

謝謝,像一個魅力工作。 – noclist

0

Remove返回stringNot a string[]

Split返回string[]

所以,你需要使用不同的變量爲這兩個功能。

1

從字符串中刪除字符會返回一個字符串,而不是數組,然後您應該拆分該字符串,而不是原始字符串。

獲取分隔符可以無需中間的字符串來完成,並在那裏開始被刪除可以在分隔可直接使用,所以這是可以做到IA單個語句的字符串:

string[] result = numbers.Substring(5).Split(numbers[2]); 
相關問題