使用 StartsWith() 获取读取文本文件的第二个实例

克雷格157

我正在从文本文件中读取以查找某行以我的标准开头的行索引。
事实证明,我想要的标准实际上有两个实例,我想获得第二个。
我将如何修改以下代码以跳过第一个实例并获得第二个实例?

var linesB = File.ReadAllLines(In_EmailBody);
int LineNumberB = 0;
string criteriaB = "T:";
for (LineNumberB = 0; LineNumberB < linesB.Length; LineNumberB++){
    if(linesB[LineNumberB].StartsWith(criteriaB))
        break;
}

我使用之后的结果并将其与另一个标准进行比较,以找出两个结果之间的行数。

蒂姆·施梅尔特

您可以使用以下 LINQ 查询来简化您的任务:

List<string> twoMatchingLines = File.ReadLines(In_EmailBody)
    .Where(line = > line.StartsWith(criteriaB))
    .Take(2)
    .ToList();

现在列表中都有。

string first = twoMatchingLines.ElementAtOrDefault(0);  // null if empty
string second = twoMatchingLines.ElementAtOrDefault(1); // null if empty or only one

如果你想使用 for 循环(你的最后一句话建议它),你可以计算匹配的行:

int matchCount = 0;
for (int i = 0; i < linesB.Length; i++)
{
    if(linesB[i].StartsWith(criteriaB) && ++matchCount == 2)
    {
        // here you are
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 Pandas 连接 2 个文本文件,第一个文本文件为标题,第二个为正文

使用每个记录的第二个定界符从SQL导出定界文本文件

为什么使用tab选项在mysqldump的第二个文件(文本文件)上出现访问被拒绝错误?

使用sed替换整行的第二个实例

如何使用批处理文件打开第二个Skype实例?

使用startswith从动态对象中获取属性

如何使用startsWith筛选并获取每个对象键的值?

在第二个 P 标签 <p> 之后使用 SQL 从 DB 获取文本

使用scrapy,python从DIV中的第二个孩子那里获取文本

如何使用fgets获取第二个整数?

使用jQuery获取tr的第二个td

使用条件获取第二个大数

使用jQuery获取第二个孩子

如何使用HttpPost获取第二个响应

使用bash脚本获取当前目录的第二个根文件夹

如何使用php从路径获取倒数第二个文件夹名称?

使用 xpath (selenium) 获取第二个实例的第一个兄弟姐妹

无法从.NET使用DocumentDB STARTSWITH

使用第二个元素

使用Bash替换ASCII文件中一行的第二个字符串实例

Python :- 读取文本文件并将其转换为大写并写入第二个文件

从文本文件中读取第二个 QPoint 时出错,我该怎么办?

使用pynacl使用一个文件加密并使用第二个文件解密

使用padas读取文本文件以获取特定行

使用php读取文本文件以获取JavaScript

使用熊猫读取2个csv文件,使用一个文件中的值在第二个文件中查找其他值

如何以文本文件的形式保存一个二维数组,然后使用 python 从文本文件中读取它?

使用jQuery检查文本输入并要求输入第二个文本

根据第二个文本文件从文本文件中删除重复项