[英]C# .NET - How can I split string with a tab separator?
我的代码中包含以下字符串:
string test = @"aaaaa aaaaa aaaaa bbbb ttttt tttttt
33333 44444 777777 77777 88888 8888 8888 88888 88888
wwwww wwwww wwwwww wwwww wwwww wwwwww";
这是我的代码,通过换行符和制表符拆分字符串。
foreach (var line in test.Split(new string[] { Environment.NewLine }, StringSplitOptions.None))
{
foreach (var lineItem in line.Split('\t'))
{
}
}
在第一个循环的第一个交互行变量是“ aaaaa aaaaa aaaaa bbbb ttttt tttttt” ,这是正确的,但是在几秒钟的循环中,第一个交互变量lineItem是相同的,因此不会使用制表符分隔符拆分此字符串。 为什么会这样呢?
您确定您的字符串中包含制表符吗? 尝试使用Split()
它将按制表符和空格分开:
foreach (var lineItem in line.Split())
{
}
它不起作用的原因是tabs
不是您的string test
选项卡-请参见:
第一行是我从MS Excel中生成的。 使用正则表达式正确表示任何空格字符(即使对于Unicode转义序列)
Regex regex = new Regex(@"\s");
string[] bits = regex.Split(line);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.