C# 当正则表达式匹配时,如何获取行位置?

C# 当正则表达式匹配时,如何获取行位置?,c#,regex,C#,Regex,我创建了一个正则表达式模式来在文本文件中查找字符串。 我需要知道正则表达式模式匹配时字符串的位置 但是我必须使用ReadToEnd()读取文本文件,然后使用MatchCollection收集所有结果,所以任何人都知道是否有任何方法可以获取文本文件中的字符串位置。在提问之前,您是否搜索过这个?它是否也适用于readLine,如图所示?我曾使用此函数尝试获取行号,但结果是字符计数而不是行号。在这种情况下,我想找出行号。对,重复删除了我搜索过的行号,我知道当我使用“ReadLine()”函数时如何记录

我创建了一个正则表达式模式来在文本文件中查找字符串。 我需要知道正则表达式模式匹配时字符串的位置


但是我必须使用
ReadToEnd()
读取文本文件,然后使用
MatchCollection
收集所有结果,所以任何人都知道是否有任何方法可以获取文本文件中的字符串位置。

在提问之前,您是否搜索过这个?它是否也适用于readLine,如图所示?

我曾使用此函数尝试获取行号,但结果是字符计数而不是行号。在这种情况下,我想找出行号。对,重复删除了我搜索过的行号,我知道当我使用“ReadLine()”函数时如何记录行号,但我想知道当我通过streamreader使用“ReadToEnd()”函数读取所有内容时如何记录行号。在链接中,他们使用ReadLine()把它放在一个循环中,直到行为null-,如果我没有弄错的话,它实际上会和ReadToEnd()一样。有没有任何理由说明这在你的情况下不起作用每次在循环中发现模式出现时,都可以使用列表存储行的索引。