C#LINQ to SQL-如何在“ ...”内部替换?

时间:2018-08-22 17:54:32

标签: linq linq-to-sql

我在CSV中有这样的行: “ 2006年4月26日,AAA,BBB,\” CCC,DDD,EE,TT \“,21.32”

如何替换该行内的所有逗号?

\“ CCC,DDD,EE,TT \” 即使Row在两个符号之间: \“ ... \”

因为我要这样做:

var DBData = from line in lines.Skip(1)
                                 let data = line.Split(new Char[] { ',' })
                                 select new DB_Table
                                 {
                                 ...
                                 };

我随地吐痰的行:

** 04/26/2006

AAA

BBB

CCC

DDD

EE

TT

... **

但是我需要这样:

** 04/26/2006

AAA

BBB

CCC DDD EE TT

... **

1 个答案:

答案 0 :(得分:0)

我也建议您使用CSV解析库,但是您可以使用正则表达式来解决此问题:

var p = new Regex(@"(?<=""[^""]*),(?=[^""]*"")", RegexOptions.Compiled);

var DBData = from line in lines.Skip(1)
             let data = p.Replace(line, " ").Split(new Char[] { ',' })
             select new DB_Table {
                 ...
             };