Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/34.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后的文本#_C#_Regex_Anchor - Fatal编程技术网

C# 正则表达式获取锚定标记C后的文本#

C# 正则表达式获取锚定标记C后的文本#,c#,regex,anchor,C#,Regex,Anchor,我有一个C#Regex,如下所示: Regex r = new Regex(@"(?<value1>.*?)<a.*?href=(""|')(?<href>.*?)(""|').*?>(?<value2>.*?)</a>(?<value3>.*?)"); Regex r=newregex(@“(?*??(.*?)); 我可以获得value1、href、value2的文本。但是,value3始终为“” 获取锚点结束标记()

我有一个C#Regex,如下所示:

Regex r = new Regex(@"(?<value1>.*?)<a.*?href=(""|')(?<href>.*?)(""|').*?>(?<value2>.*?)</a>(?<value3>.*?)");
Regex r=newregex(@“(?*??(.*?));
我可以获得value1、href、value2的文本。但是,value3始终为“”


获取锚点结束标记()之后的文本时,我缺少什么。

如果使用解析器,则不会返回空值,因为使用正则表达式解析HTML不是最好的方法。但要解决这个问题,请删除表达式末尾的非贪婪量词,使其贪婪(匹配尽可能多的数量)

(?*?)
^删除非贪婪量词
让它变得贪婪

(?<value3>.*)
(?*)

请参见

如果使用解析器,则不会返回空值,因为用正则表达式解析HTML不是最好的方法。但要解决这个问题,请删除表达式末尾的非贪婪量词,使其贪婪(匹配尽可能多的数量)

(?*?)
^删除非贪婪量词
让它变得贪婪:

(?<value3>.*)
(?*)

请参见

您不应该使用正则表达式来解析html。要回答这个问题,我相信
后面的
*
使表达式不贪婪。也许可以尝试删除它。你不应该使用正则表达式来解析html。要回答这个问题,我相信
后面的
*
会使表达式不贪婪。也许试着把它去掉。