![](/img/trans.png)
[英]Filter string to array char - 'IEnumerable<char>' does not contain a definition for 'ToCharArray'
[英]"IEnumerable <string>" does not contain a definition for "Split"
首先,我的代碼用引號分隔,然后用逗號分隔:
string source = "\"kk\"jlu,fhhfh,hrhrh,rhrhr";
List<string> data = new List<string>();
var parts = source.Split('\"');
data.AddRange(parts.Where((x, index) => index % 2 != 0));
data.AddRange(parts.Where((x, index) => index % 2 == 0).Split(','));
var result = string.Join(" | ", data.Where(x => !string.IsNullOrWhiteSpace(x)));
Console.WriteLine(result);
Console.ReadKey();
在線的:
data.AddRange(parts.Where((x, index) => index % 2 == 0).Split(',')); error:<br>
“IEnumerable”不包含“Split”的定義,並且無法找到將“IEnumerable”類型作為第一個參數的可訪問擴展方法“Split”
怎么做才能讓它發揮作用?
它是String.Split
所以你不能在多個字符串上使用它。
我猜您想將SelectMany
與Split
一起使用:
data.AddRange(parts.Where((x, index) => index % 2 == 0).SelectMany(x => x.Split(',')));
出現問題是因為您試圖添加字符串數組的數組。
string source = "\"kk\"jlu,fhhfh,hrhrh,rhrhr";
List<string> data = new List<string>();
var parts = source.Split('\"');
data.AddRange(parts.Where((x, index) => index % 2 != 0));
parts.Where((x, index) => index % 2 == 0)
.ToList()
.ForEach(x => data.AddRange(x.Split(',')));
var result = string.Join(" | ", data.Where(x => !string.IsNullOrWhiteSpace(x)));
Console.WriteLine(result);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.