【问题标题】:indexof a string from a list in another list另一个列表中列表中的字符串的索引
【发布时间】:2011-07-19 21:14:22
【问题描述】:

我有以下代码:

    foreach (var str in usedCSS)
    {
        if (CSS.Contains(str))
            Response.Write(str);
        else
            Response.Write("Could not find: " + x + "<br />");
    }

哪个剂量完全符合我的需要,但我不知道该怎么做。

  • usedCSSList&lt;string&gt;
  • CSS 也是 List&lt;string&gt;

它们之间的区别在于 usedCSS 仅包含 css 样式名称,例如:.CssStyleCSS 包含完整样式例如:.CssStyle {font-weight:bold)

我想要打印出usedCSS 中的所有实际 CSS 代码。 我知道我应该使用IndexOf,但不知道如何使用。

我请求你的帮助。

【问题讨论】:

  • 您的要求有点不清楚。你能举一个预期输入和输出的例子吗? (即 usedCSS、CSS 和 str 的值,以及您希望输出到控制台的内容)
  • 不知何故,我确定我举了例子。

标签: c# list indexof


【解决方案1】:
foreach (var str in usedCSS)
{
    if (CSS.Any(c => c.Contains(str)))
        Response.Write(str);
    else
        Response.Write("Could not find: " + x + "<br />");
}

或者,我认为您也可以使用c.StartsWith(str)

【讨论】:

  • .Contains 无法匹配它们。因为它会尝试精确匹配字符串。
  • @Dementic:在这种情况下,情况并非如此 - Bala 的解决方案也应该有效,因为使用的 Containsstring.Contains(),如果字符串中的任何位置匹配,它将返回 true跨度>
  • 经过测试,你是对的。但我一直认为.Contains 将匹配 excat 字符串。我猜我错了。
【解决方案2】:

怎么样:

foreach (var str in usedCSS)
{
    if (CSS.Any( x=> x.StartsWith(str))
        Response.Write(str);
    else
        Response.Write("Could not find: " + x + "<br />");
}

【讨论】:

  • 相反的方式呢?有办法吗?相反,我的意思是迭代 CSS 列表,并匹配 usedCSS。
  • 既然你似乎没有回答,我应该再开一个问题吗? :\
猜你喜欢
  • 2013-07-05
  • 2015-10-10
  • 1970-01-01
  • 2019-08-26
  • 1970-01-01
  • 2019-07-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多