Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.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# 仅使用.net正则表达式获取第n次出现的字符串_C#_.net_Regex - Fatal编程技术网

C# 仅使用.net正则表达式获取第n次出现的字符串

C# 仅使用.net正则表达式获取第n次出现的字符串,c#,.net,regex,C#,.net,Regex,请帮忙。我已经试了两天多了。。。这让我很沮丧 如果您有任何想法,这将非常有帮助: 具有以下文本并在.NET中使用正则表达式: ------------------------------------- This is a text : This is my first line of information which continues here : This is my second line

请帮忙。我已经试了两天多了。。。这让我很沮丧

如果您有任何想法,这将非常有帮助:

具有以下文本并在.NET中使用正则表达式:

   -------------------------------------
   This is a text   : This is my first line of information
                      which continues here
                    : This is my second line of information
                      which continues here
                    : This is my third line of information
                      which continues here
   -------------------------------------
我怎样才能得到:
-“这是我的第一行信息,在此继续”
-“这是我的第二行信息,在此继续”
-“这是我的第三行信息,在此继续”

一个实际的例子:
请考虑课文动态。< /P> 我能得到的最好的正则表达式是:

 (?ms)((?<=(:)).*?(?=(\:)))

(?ms)(?这将为您提供所需的一切,但不幸的是也有点太多

/:[^:::+$/gm


问题是,如果不匹配最后一行之后的所有内容,您将永远无法匹配最后一行,因为您无法知道最后一行之后的内容是否仍然有效(或者至少您在最初的问题中没有提供).

这将为您提供所需的一切,但不幸的是,这也有点太多了

/:[^:::+$/gm


问题是,如果不匹配最后一行之后的所有内容,您将永远无法匹配最后一行,因为您无法知道最后一行之后的内容是否仍然有效(或者至少您在最初的问题中没有提供有效信息)。

请尝试
(?全部读取,在冒号上拆分,删除第一个项目,然后为每个项目将多个空格替换为单个空格,并trim@WiktorStribiżew:这没关系,但我怎么能从第二行开始呢?我没有使用代码的特权。只使用正则表达式:(你的意思是什么?你想要3种不同的正则表达式模式?我如何替换空格-仅使用正则表达式替换函数/方法,无法在一次匹配操作中匹配不连续的文本片段-没有正则表达式允许你这样做。请尝试
(?全部读取,在冒号上拆分,删除第一个项目,然后为每个项目将多个空格替换为单个空格,并trim@WiktorStribiżew:这没关系,但我怎么能从第二行开始呢?我没有使用代码的特权。只使用正则表达式:(你是什么意思?你想要3种不同的正则表达式模式?我如何替换空格?只有使用正则表达式替换函数/方法,无法在一个匹配操作中匹配不连续的文本片段-没有正则表达式允许你这样做。@FP:谢谢,但我如何从第二个开始?):继续?在正则表达式中,如果不使其完全不可读,这有点困难。我建议迭代捕获的组并跳过第一个组。@FP:谢谢,但如何从第二个开始呢?“继续?在正则表达式中,如果不使其完全不可读,这有点困难。我建议迭代捕获的组并跳过第一个组。