从数组中过滤字符串
本文关键字:字符串 过滤 数组 | 更新日期: 2023-09-27 18:16:25
我试图设计一个检查传入字符串的数组,如果传入字符串有一个特定的起始字符,它被跳过
例如:;item1
item2
item3
;item4
应该以
的形式放入数组中item2
item3
我想我会尝试使用foreach方法跳过以标识符开始的行,然后在else中附加不匹配的行回字符串数组,但似乎我无法做到这一点。
帮助!
void Whitelist()
{
if (logging == 1)
{
FIO._Log("Performing WhiteList func", writer);
}
try
{
string[] lines = File.ReadAllLines("Whitelist.ini");
string[] lines2;
foreach (string line in lines)
{
if (line.StartsWith(";"))
{
continue;
}
else
{
// lines2.append(line) ??
}
}
structs.CustomWhiteList = lines2;
}
catch (Exception e)
{
MessageBox.Show("Error reading whitelist file." + Environment.NewLine + e.Message);
FIO._Log("Failed to read whitelist file", writer);
}
}
您可以读入这些行,过滤掉以分号开头的行,然后将结果数组直接设置为CustomWhiteList
。
尝试以下代码:
var lines = File.ReadAllLines("Whitelist.ini");
structs.CustomWhiteList = lines.Where(x => !x.StartsWith(";")).ToArray();
这使用LINQ,所以你必须添加using System.Linq
到你的类,如果它还没有。