关于Split方法

lg20311016 2009-01-02 01:45:24
string a = "abcabcabc";
string[] b = a.Split('a');
Console.WriteLine(b.Length);

为什么输出的是4不是3啊?
...全文
69 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
lg20311016 2009-01-02
  • 打赏
  • 举报
回复
搞懂了,谢谢大家
hechenqingtian 2009-01-02
  • 打赏
  • 举报
回复
string a = "abcabcabc";
string[] b = a.Split('a');
Console.WriteLine(b.Length);

字符串a是以a字符作为分割的 ,字符串a中有3个a字符,可以将字符串分割为4个字符串
得到的数组长度当然是4

在字符串 a 中可以将理解为: a=""+"abcabcabc";
止戈而立 2009-01-02
  • 打赏
  • 举报
回复
我倒觉得这样加个Trim()就行了:
string a = "abcabcabc";
string[] b = a.Trim('a').Split('a');
Console.WriteLine(b.Length);
guohouchang 2009-01-02
  • 打赏
  • 举报
回复
完全正确
ruijian1 2009-01-02
  • 打赏
  • 举报
回复
同意 是把a前面的放在a[0]
一品梅 2009-01-02
  • 打赏
  • 举报
回复
a.split(new regex("(?!^)|a"));
chwlyr 2009-01-02
  • 打赏
  • 举报
回复
第一个a前面应该有个值为空。

你可以将b的每一个值都打印出来,看看结果。
一品梅 2009-01-02
  • 打赏
  • 举报
回复
a.split(new regex("(?!^)a"));
止戈而立 2009-01-02
  • 打赏
  • 举报
回复
a[0]="";
a[1]="bc";
...

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧