C# 使用字符串分割字符串
实现了一个使用字符串来切割字符串的扩展方法,同时发现可以使用正则表达式来切割字符串
手动实现的这个由于使用的是迭代枚举数的方式返回的数据,某些场景下比用正则切割性能更好一些
public static IEnumerable<string> SplitByString(this string text, string separator) { int i = 0; while (true) { var idx = text.IndexOf(separator, i); if (idx == -1) { if (i == 0) { yield return text; } else { yield return text.Substring(i); } break; } else { yield return text.Substring(i, idx - i); i = idx + separator.Length; } } }
使用方式
string str = "abc\r\n测试啊\r\n123\r\n"; //使用自定义的切割扩展方法 foreach (var p in SplitByString(str, "\r\n")) { Console.WriteLine(p); } //使用正则表达式类的切割方法 foreach (var p in Regex.Split(str, "\r\n")) { Console.WriteLine(p); }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
2014-12-12 C# 学习笔记