Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何计算行数并在结果前打印每行的行号?_C#_Regex_Richtextbox - Fatal编程技术网

C# 如何计算行数并在结果前打印每行的行号?

C# 如何计算行数并在结果前打印每行的行号?,c#,regex,richtextbox,C#,Regex,Richtextbox,我正试图将我的方式正则化到一个文本文件中,以便在第二个richtextbox中搜索、计数和显示结果,因为我们可以在整个文本文件中找到我们要查找的内容(已经加载到第一个richtextbox中) 好的,我想要的应该是一个输出: >>>ACLs using OUT are out: >>>Total Found: 3 Line: 15 access-group myaclname OUT interface outside.12 Line: 16 access-g

我正试图将我的方式正则化到一个文本文件中,以便在第二个richtextbox中搜索、计数和显示结果,因为我们可以在整个文本文件中找到我们要查找的内容(已经加载到第一个richtextbox中)

好的,我想要的应该是一个输出:

>>>ACLs using OUT are out:
>>>Total Found: 3
Line: 15 access-group myaclname OUT interface outside.12
Line: 16 access-group youraclname OUT interface outside.1
Line: 17 access-group aclname OUT interface outside
现在我得到的是:

>>>ACLs using OUT are out:
>>>Total Found: 3
Line: 15 access-group myaclname OUT interface outside.12
Line: 15 access-group youraclname OUT interface outside.1
Line: 15 access-group aclname OUT interface outside

我是一名网络工程师,C#不是我的专业领域,尽管我觉得它很吸引人,每天都在学习,特别是在这里

最简单的方法是读取每一行并让计数器跟踪

using (StreamReader r = new StreamReader("test.txt")) 
{
    int counter = 1;
    string line = r.ReadLine();
    while (line != null) 
    {
        Console.WriteLine (counter.ToString() + ": " + line);
        counter++;
        line = r.ReadLine ();
    }
}

在读取文件中的行时,是否尝试在while循环中放置断点以检查计数器的值?(另外,当我刚刚编辑您问题中的代码段时,大括号不匹配也有问题。如果
计数器+++
不在while循环中,它将无法按预期工作…)看起来您在使用“config”,而您应该在ace.MatchesHi Damon中使用“line”,它只计算一个组。如果你把另一个组放在下面,它就会停止计数并返回null
using (StreamReader r = new StreamReader("test.txt")) 
{
    int counter = 1;
    string line = r.ReadLine();
    while (line != null) 
    {
        Console.WriteLine (counter.ToString() + ": " + line);
        counter++;
        line = r.ReadLine ();
    }
}