Есть необходимость получить все относительные пути в HTML разметке. Составил подобное регулярное выражение:
@"(?:src|href)=""([^#](?!http[s]*[:])[^/]{2}(([a-z0-9-.]*/)*)([a-z0-9-.]*?[a-z0-9-]*!?.[a-z]{2,4})(?!#)\w*\W*)"""
В целом работает как нужно, если использовать аналогичное, например в JavaScript. Якоря типа #yakor игнорируются корректно, но есть проблема с якорными ссылками типа index.html#yakor в C#, они как раз не игнорируются.
Конструировал в этом калькуляторе, но он для JavaScript.
\#или так\x23– nick_n_a Aug 10 '16 at 16:07