我在文本框中有以下字符串,我想将每行分开并将其复制到excel单元格中。
61663254
61663236-61663250
61663254-61663280
61663254
61663254-61663280
如果该行有' - ',它应该在第一个单元格中的' - '之前复制数字 ' - '后的数字应该在下一个单元格中。
如果行没有任何' - ',它应该将行中的数字复制到两个单元格
答案 0 :(得分:4)
您可以使用String.Split
拆分字符串:
foreach(var line in lines)
{
string[] cells = line.Split('-');
if (cells.Length == 1)
cells = new string[] {cells[0], cells[0]};
// Copy each cell into excel
}
答案 1 :(得分:1)
您需要分割换行符或空格以及连字符。
此代码交换连字符的所有空格,然后在连字符上拆分。
string original = "61663254 61663236-61663250 61663254-61663280 61663254 61663254-61663280";
List<string> cells = original.Replace(" ", "-").Split('-');
答案 2 :(得分:0)
查看String.Split方法。
答案 3 :(得分:0)
我会使用StringReader
和string.Split
方法,即:
var s =
@"61663254
61663236-61663250
61663254-61663280
61663254
61663254-61663280";
using (var stringReader = new StringReader(s))
{
string line;
while ((line = stringReader.ReadLine()) != null)
{
var cells = line.Split('-');
if (cells.Length == 1)
{
cells = new[] { cells[0], cells[0] };
}
// ...
}
}