【问题标题】:How to get the line position when regex is match?正则表达式匹配时如何获取行位置?
【发布时间】:2014-12-03 09:42:12
【问题描述】:

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

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

【问题讨论】:

  • 我曾使用此函数尝试获取行号,但结果是字符数而不是行号。在这种情况下,我想找出行号。
  • 对,然后删除重复项

标签: c# regex


【解决方案1】:

在提出问题之前,您是否已经搜索过此内容?它是否也适用于 readLine,如 here 所示?

【讨论】:

  • 我已经搜索过了,我知道使用“ReadLine()”函数时如何记录行号,但我想知道使用“ReadToEnd()”函数时如何记录行号通过 streamreader 读取所有内容的功能。
  • 在链接中,他们使用 ReadLine() 并将其放入循环中,直到该行为空 - - 如果我没记错的话,它实际上会与 ReadToEnd() 执行相同的操作。有什么理由在您的情况下不起作用? - 每次在循环中发现模式出现时,您都可以使用 list 来存储行的索引。
猜你喜欢
  • 1970-01-01
  • 2011-07-11
  • 2017-01-03
  • 2013-06-12
  • 2014-11-11
  • 2021-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多