Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.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#_Html_.net_Regex - Fatal编程技术网

C# 正则表达式只捕获最后几个值

C# 正则表达式只捕获最后几个值,c#,html,.net,regex,C#,Html,.net,Regex,我有一个很大的文件 <title>words words </title> 单词 作为描述符,我试图找到一个正则表达式,以提供我找到的这些标记之间的数据 <title.*?>(\w+)</title> (\w+) 这将起作用,但只拾取一些匹配,我认为这是因为标签通常是这样的 adaddad<title>Word word word</title>sdfdsfdsfs adaddad<title>Wor

我有一个很大的文件

 <title>words words </title>
单词
作为描述符,我试图找到一个正则表达式,以提供我找到的这些标记之间的数据

<title.*?>(\w+)</title>
(\w+)
这将起作用,但只拾取一些匹配,我认为这是因为标签通常是这样的

adaddad<title>Word word word</title>sdfdsfdsfs
adaddad<title>Word word word</title>sdfdsfdsfs
adaddaword单词
通常两边都有随机垃圾。我真的很不擅长正则表达式,并且还在努力学习它。我已经找到了很多非常接近的帖子,但是没有一个能完全解决我的问题

:origLink></item>\r\n<item><title>words word word</title><guid is

:origLink>\r\nWord word word我认为问题在于您试图使用
\w
捕获包含单词字符和空格的文本。应该是:

<title.*?>([\w\s]+?)</title>
([\w\s]+?)
这将强制文本如下所示

adaddad<title>Word word word</title>sdfdsfdsfs
adaddad<title>Word word word</title>sdfdsfdsfs
adaddaword单词

要同时使用单词和空格捕获,我认为问题在于您试图使用
\w
捕获包含单词字符和空格的文本。应该是:

<title.*?>([\w\s]+?)</title>
([\w\s]+?)
这将强制文本如下所示

adaddad<title>Word word word</title>sdfdsfdsfs
adaddad<title>Word word word</title>sdfdsfdsfs
adaddaword单词
要用单词和空格捕获,请改用

^[^<]*<title.*?>([^<]*)</title>.*$
^[^改用

^[^<]*<title.*?>([^<]*)</title>.*$

^[^试着让你的正则表达式变得贪婪

 <title.*?>.+?</title>
+?
而且,\w+将不匹配空格“”


尝试expresso对您的正则表达式进行微调

尝试使您的正则表达式变得贪婪

 <title.*?>.+?</title>
+?
而且,\w+将不匹配空格“”


尝试expresso微调您的正则表达式

乐意帮助,请将此标记为答案,以便其他人也能快速找到答案。@Jras,
+?
不贪婪,它懒惰,而且您没有任何捕获组…?乐意帮助,请将此标记为答案,以便其他人也能快速找到答案。@Jras,
+?
不贪婪,它很懒,而且你没有任何捕获组。。。?