我正在尝试迭代一个字符串数组并检查/替换输入字符串中是否存在任何字符串。使用LINQ,这是我到目前为止。
string input = "/main/dev.website.com"
string[] itemsToIgnore = { "dev.", "qa.", "/main/" };
string website = itemsToIgnore
.Select(x =>
{ x = input.Replace(x, ""); return x; })
.FirstOrDefault();
当我运行它时,实际上什么都没发生,我的输入字符串保持不变?
答案 0 :(得分:5)
string website = itemsToIgnore
.Aggregate(input, (current, s) =>
current.StartsWith(s) ? current.Replace(s, string.Empty) : current);
没有Linq
foreach (var part in itemsToIgnore)
{
if (website.StartsWith(part))
{
website = website.Replace(part, string.Empty);
}
}