从HTML
中的任何githup-repository页面,我尝试获取License
的路径。
目前我得到了这个:
<a\shref=\"((.*?LICENSE|.*?license)|(.*?LICENSE.+?|.*?License.+?))\">
结果:
MATCH:
73f79efa40f6bdde431853ce5ff000b9fe0b1fe5" itemprop="license" title="License.txt - <a href="/aspnet/EntityFramework6/blob/master/License.txt" class="js-navigation-open" id="dc5cde275269b574b34b1204b9221cb2-73f79efa40f6bdde431853ce5ff000b9fe0b1fe5" itemprop="license" title="License.txt">
GROUP:
/aspnet/EntityFramework6/blob/master/License.txt" class="js-navigation-open" id="dc5cde275269b574b34b1204b9221cb2
我想要的只是:
"/aspnet/EntityFramework6/blob/master/License.txt"
我的错误在哪里?
备注:
我想要匹配:
答案 0 :(得分:0)
你没有考虑你的正则表达式中的文件扩展名,你也不应该包括&#39;&gt;&#39;最后因为链接和标签关闭之间还有很多其他属性。
如果我们使用RegexOptions.IgnoreCase
:
var match = Regex.Match(text, "<a\\shref=\"(.+?license(?:\\..+?)?)\"", RegexOptions.IgnoreCase);
if (match.Success)
{
var link = match.Groups[1].ToString();
}