如何从列表中的字符串中删除 <;字符串>;

本文关键字:字符串 lt gt 删除 列表 | 更新日期: 2023-09-27 18:13:46

在列表上的循环中,我做了:

private void listtostringlist(List<NewsLine> lnl, List<string> myl)
        {
            for (int i = 0; i < AllNews.Count; i++)
            {
                myl.Add(AllNews[i].text);
                IFormatProvider provider = CultureInfo.InvariantCulture;
                DateTime myTime = DateTime.ParseExact(AllNews[i].original_time, "DyyMMddTHHmm", provider);
                string results = myTime.ToString("hh:mm דווח במקור בתאריך : dd.MM.yy : שעה");
                AllNews[i].original_time = results;
                myl.Add(results);
                myl.Add(AllNews[i].link);
                myl[i] = Regex.Replace(myl[i], @"'t|'n|'r", "");
            }

尝试使用Regex:

myl[i] = Regex.Replace(myl[i], @"'t|'n|'r", "");

但是没有效果,当在列表中使用断点时,我仍然看到一些行在开头或结尾有''n''t。如果有的话,我想把它们去掉。

如何从列表中的字符串中删除
	<;字符串>;

我怀疑AllNews的计数小于myl中的行数,或者当您将其传递到此函数时,myl中已经有一些行了。

如果是这种情况,那么计数将不匹配,并且您不会为集合中的每个元素获得迭代,因此,并非所有元素都会应用替换。

我会把它改写成:

private void listtostringlist(List<NewsLine> lnl, List<string> myl)
{
    for (int i = 0; i < AllNews.Count; i++)
    {
          myl.Add(AllNews[i].text);
          // etc...
    }
    for(int i = 0; i < myl.Count; i++)
    {
        myl[i] = Regex.Replace(myl[i], @"'t|'n|'r", "");
    }
}

此外,正如评论中所指出的,您还在for循环中多次向myl添加:

myl.Add(AllNews[i].text);
myl.Add(results);
myl.Add(AllNews[i].link);

这将意味着AllNewsmyl的计数将不同步,因此在给定上下文的情况下,索引器imyl是无用的。