c# - 删除列包含特定文本的行
问题描述
我想删除其列包含的所有数据行,?
例如大约 100 行中的列状态我得到的值为Unknown?
, Error?
, InProgress
,Done
所以,我想删除所有包含的行?
下面是我正在使用的代码
//I am splitting the string on the basis of delimeter ,
var data = from val in UserData
select val.Split(',');
//Below code is not working
var filterdata = from rows in data
where rows.Contains("?")
select rows;
解决方案
您忘记反转包含:
string[] someStringArray = new string[]
{
"\"ABC\" ,\"Error?\",\"OK\"",
"\"DEF\",\"Inprogress\",\"FINE\"",
"1,2,3",
"?,2,3",
"1,?,3",
"4,5,6"
};
//I am splitting the string on the basis of delimeter ,
var data = from val in someStringArray
select val.Split(',');
//Below code is not working
var filterdata = from rows in data
where !rows.Contains("?") // "!" to select the rows WITHOUT "?"
select rows;
foreach (var item in filterdata)
{
foreach (var i in item)
{
Console.Write(i + ",");
}
Console.WriteLine();
}
return;
结果:
"DEF","Inprogress","FINE",
4,5,6,
我认为这段代码运行良好。
除此之外,我做了一个疯狂的猜测:你不是在搜索问号“?”。这 ”?” 是一个字符,如果该字符无法以您预期的编码显示,则该字符通常会显示。
看看你的字符有哪些数字:
var chars = someStringArray.SelectMany(s => s.Select(c => c));
foreach (var item in chars.GroupBy(g => g.ToString() + " (" + ((int)g) + ")"))
{
Console.WriteLine(item.Key + ": " + item.Count());
}
真正的问号有 63。如果不是,你有编码问题..
推荐阅读
- reactjs - 从 React Native App 调用 Laravel 图片上传 API 时请求抛出 NULL
- nativescript - RadDataForm 有完整的示例吗?
- python - 为什么我的 launch.json 中出现“不允许使用属性 pythonPath”?
- mysql - MYSQL:1265 列的数据被截断?
- android - 通过 USB 和包安装程序更新 Android Things 应用程序
- c++ - 密码算法问题
- php - 淡出 php 中出现异常时显示的 div
- python-3.x - 在python中将msg转换为pdf
- android - 为什么 childFragmentManager.getBackStackEntryCount() 总是 0?
- c++ - int main (int argc, char** argv) 在 Cpp 中不起作用