什么是提取HTML表的标题属性值的快速方法:
...
<li><a href="/wiki/Proclo" title="Proclo">Proclo</a></li>
<li><a href="/wiki/Proclus" title="Proclus">Proclus</a></li>
<li><a href="/wiki/Ptolemy" title="Ptolemy">Ptolemy</a></li>
<li><a href="/wiki/Pythagoras" title="Pythagoras">Pythagoras</a></li></ul><h3>S</h3>
...
Run Code Online (Sandbox Code Playgroud)
所以它会返回Proclo,Proclus,Ptolemy,Pythagoras,....每行的字符串.我正在使用StreamReader读取文件.我正在使用C#.
谢谢.
Sta*_*erg 20
这个C#正则表达式将找到所有标题值:
(?<=\btitle=")[^"]*
Run Code Online (Sandbox Code Playgroud)
C#代码是这样的:
Regex regex = new Regex(@"(?<=\btitle="")[^""]*");
Match match = regex.Match(input);
string title = match.Value;
Run Code Online (Sandbox Code Playgroud)
正则表达式使用正向lookbehind来查找title值开始的位置.然后它匹配所有内容直到结束双引号.
使用下面的正则表达式
title="(.[^"]+)"
Run Code Online (Sandbox Code Playgroud)
然后使用Groups浏览匹配的元素.
编辑:我修改了正则表达式,以涵盖@StaffanNöteberg在评论中提供的示例