Я использую следующее Regex (которое я нашел онлайн) для получения URL-адресов на странице HTML;Regex для получения url из HTML
Regex regex = new Regex(@"url\((?<char>['""])?(?<url>.*?)\k<char>?\)");
Прекрасно работает для HTML ниже;
<div style="background:url(images/logo.png) no-repeat;">UK</div>
Однако возвращает больше, чем мне нужно, когда страница HTML содержит следующий Javascript, возвращая «destpage»
function buildurl(destpage)
Я попробовал следующее регулярное выражение, чтобы включить двоеточие, но это, кажется, недействителен
:url\((?<char>['""])?(?<:url>.*?)\k<char>?\)
Любая помощь будет высоко оценена.
http://stackoverflow.com/a/1732454/1043380 Прекратить использование Regex для разбора html. Используйте более подходящий инструмент. – gunr2171
Попробуйте использовать '\ b' (границу слова) вместо двоеточия. – Jerry
@Jerry Добавление \ b вокруг url, казалось, делало трюк. ура – saj