2011-09-11 65 views
0

的字符串我有一個文本字符串:AB CD EF GH
我想顛倒這個文本,所以它看起來像這樣:GH EF CD ABC# - 重新組織文本

所以,AB CD EF GH會成爲GH EF CD AB

+0

請張貼一些代碼,並解釋是行不通的。 –

+0

你嘗試了什麼? – VMAtm

回答

2
String.Join(" ",("AB CD EF GH".Split(' ').Reverse())) 

基本上是:分裂您輸入的字符串的空間,讓你有 「AB」, 「CD」, 「EF」 和 「GH」 的數組。然後反轉該數組,並將該數組的各個部分再次作爲一個字符串連接,將空格字符用作膠水。

5

好吧,如果這只是空格分開的部分,你能做到這一點相當容易:

string reversed = string.Join(" ", text.Split(' ').Reverse()); 

在.NET 3.5的你由於字符串的原因,需要額外調用ToArray。加入時沒有相同的值在.NET 4 rloads:

string reversed = string.Join(" ", text.Split(' ').Reverse().ToArray()); 

它可以更有效地利用Array.Reverse扭轉就地分割陣列來完成:

string[] parts = text.Split(' '); 
Array.Reverse(parts); 
string reversed = string.Join(" ", parts); 

...但該差是否會顯著或不是更可疑:)

+0

會不會是'string [] parts = text.Split('');'作爲string.split返回一個數組? –

+0

@ m.edmonson:謝謝,修正。 –

+1

很高興我能幫助着名的Jon Skeet! :-) –

0

把它分解成一個數組,扭轉陣列,並加入它:

string.Join(" ", "AB CD EF GH".Split(' ').Reverse().ToArray());