2013-04-18 6 views
0

У меня есть массив, и каждый индекс содержит строку с четырьмя символами. Мне нужно выбрать случайную точку в строке, а затем отрезать stringaArray[0] и stringaArray[1] в той же точке и обменять их нарезанные части и добавить их в splicedStringArray[0] и splicedStringArray[1].Как разбить две строки и нарезать нарезанные части на C#?

Я знаю, как использовать split в C#, и я экспериментировал с этим, но он будет разделять строку только на символы, а не на части. Я задаю этот вопрос, потому что мой образ мышления состоит в том, чтобы создать множество переменных для хранения временных строк, а затем добавить их в splicedStringArray[].

Вот моя последняя попытка найти начальную середину и конец строки, и мы надеемся, скопировать все, что я хочу, чтобы переменные, чтобы сделать новые строки, а затем хранить их в Teh второго массива:

  string s = stringaArray[0]; 
      char[] charArray = s.ToCharArray(); 

      int amount = charArray.Length; 

      int findMiddle = amount/2 + 1; 

      int midchar = findMiddle - 1; 
      int findLast = amount - 1; 


      char fchar = charArray[0]; 
      char mchar = charArray[midchar]; 
      char lchar = charArray[findLast]; 

Я был также глядя на класс строителя строк на C# и задаваясь вопросом, есть ли там что-то, что я мог бы использовать, но я думаю, что я потрачу много времени на это и разработаю худшее решение, поэтому любые советы о том, как это сделать, будут оценены.

+6

Не могли бы вы предоставить код, который вы пробовали? –

+2

Можете ли вы опубликовать пример своего свопа и фрагмента? – ryadavilli

+0

Я отредактировал это с сегодняшнего утра, позвольте мне вернуться назад и получить этот код, я поправлю его тогда спасибо! – deucalion0

ответ

1

Для разделения в точном положении используйте String.Substring. Таким образом, вы можете разделить до определенный пункт и от определенный пункт. Самое простое решение аналогично этому:

var offset = 1; 
splicedStringArray[0] = stringArray[0].Substring(0, offset) + stringArray[1].Substring(offset); 
splicedStringArray[1] = stringArray[1].Substring(0, offset) + stringArray[0].Substring(offset); 

Отказ от ответственности: код написан без тестирования.

+0

Спасибо, я попробую! :) – deucalion0

+0

Это был гений, работает удивительно! Спасибо за вашу помощь! – deucalion0

Смежные вопросы