代码改变世界

正则表达式分割字符串但是不分割字符串中引号中间的数据

  蓝之风  阅读(3371)  评论(2编辑  收藏  举报

如果的数据是这样

11211,210161,"SHRINK FILM, 23 W X .0015MIL",49.95,RM1 ,1

需要处理成如下格式的数据:

11211

210161

"SHRINK FILM, 23 W X .0015MIL"

49.95

RM1

1

这样在.net  中Split方法就不能使用了,就需要借助正则表达式来完成,可以这么写:

 string str="11211,210161,\"SHRINK FILM, 23 W X .0015MIL\",49.95,RM1 ,1";        
    string[] result = Regex.Split(str, "(?<!\"[^,]+),(?![^,]+\")");
    foreach (string s in result)
    {
    Console.WriteLine(s);
    }
    Console.ReadKey();          

输出结果如下:

image

编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示