gpt4 book ai didi

c# - 如何过滤和删除仅包含数字的列表中的索引?

转载 作者:行者123 更新时间:2023-11-30 18:56:35 31 4
gpt4 key购买 nike

private void FilterNumbers(List<string> numbers)
{
for (int i = 0; i < numbers.Count; i++)
{
if (numbers[i].Contains
}
}

例如在索引 0 中我看到:“6”在索引 7 中,我看到:“88”

我想从列表中删除这个索引。该列表是仅包含数字的混合文本和数字索引!我想删除那些。

我的代码不完整。如何检查索引是否仅包含数字?

编辑**

这是我做的:

首先我创建原始列表:

private void ExtractText(string filePath)
{
List<string> text = new List<string>();
var htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.OptionFixNestedTags = true;
htmlDoc.Load(filePath, System.Text.Encoding.GetEncoding(65001));

if (htmlDoc.DocumentNode != null)
{
var nodes = htmlDoc.DocumentNode.SelectNodes("//a/b");
foreach (var node in nodes)
{
text.Add(node.InnerText);
}
}
}

文件是:

client.Encoding = System.Text.Encoding.GetEncoding(1255);
page = client.DownloadString("http://rotter.net/scoopscache.html");
StreamWriter w = new StreamWriter(@"d:\rotterhtml\rotterscoops.html");
w.Write(page);
w.Close();
ExtractText(@"d:\rotterhtml\rotterscoops.html");

问题在于,最终在 ExtractText 方法中,作为 List 的变量文本包含在前 6 个索引和后 6 个索引中。 “0” “6” “8”

我想做的是提取两个标签之间的文本:

现在我想过滤数字,但它只过滤了开头和结尾的 3 个索引。

编辑*

这是我调用过滤方法的地方:

private void ExtractText(string filePath)
{
List<string> text = new List<string>();
var htmlDoc = new HtmlAgilityPack.HtmlDocument();
htmlDoc.OptionFixNestedTags = true;
htmlDoc.Load(filePath, System.Text.Encoding.GetEncoding(65001));

if (htmlDoc.DocumentNode != null)
{
var nodes = htmlDoc.DocumentNode.SelectNodes("//a/b");
foreach (var node in nodes)
{
text.Add(node.InnerText);
}
FilterNumbers(text);
}
}

最佳答案

您可以使用 LINQ 过滤它们。也许是这样的:

private IList<string> FilterNumbers(List<string> numbers) {
return numbers.Where(x => !x.All(char.IsDigit));
}

关于c# - 如何过滤和删除仅包含数字的列表中的索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21810052/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com