Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 在特定字符处拆分字符串,但忽略某些情况C#LINQ_String_Linq_Split_Comma - Fatal编程技术网

String 在特定字符处拆分字符串,但忽略某些情况C#LINQ

String 在特定字符处拆分字符串,但忽略某些情况C#LINQ,string,linq,split,comma,String,Linq,Split,Comma,我需要用逗号分隔字符串,但要忽略某些情况 例如,此字符串(每个逗号后是一个空格字符): 我的单词1,我的单词2,我的单词3,“我的单词x,我的单词y,我的单词z”,我的单词4,我的单词5 应拆分,以便显示: 我的话1 我的话2 我的话3 “我的字x,我的字y,我的字z” 我的话4 我的话5 基本上,所有单词都应该在逗号后分开,除了双引号中的单词应该用引号显示 string text = @"my word 1, my word 2, ""my word x, my word y"", my wo

我需要用逗号分隔字符串,但要忽略某些情况

例如,此字符串(每个逗号后是一个空格字符):

我的单词1,我的单词2,我的单词3,“我的单词x,我的单词y,我的单词z”,我的单词4,我的单词5

应拆分,以便显示:

我的话1

我的话2

我的话3

“我的字x,我的字y,我的字z”

我的话4

我的话5

基本上,所有单词都应该在逗号后分开,除了双引号中的单词应该用引号显示

string text = @"my word 1, my word 2, ""my word x, my word y"", my word 3";
string pattern = @"[^,""]+|""([^""]*)""";
IEnumerable<string> result = Regex.Matches(text, pattern).Cast<Match>()
                                  .Select(m => m.Value.Trim())
                                  .Where(s => !String.IsNullOrWhiteSpace(s));