Как извлечь значения в кавычках из строки HTML? - PullRequest
0 голосов
/ 02 июля 2018

У меня есть следующий фрагмент кода, полученный с веб-страницы:

<li class="player" data-id="168568" data-teamid="156" data-x="142.33" data-y="297.16040000000004" data-name="Corentin Tolisso" data-position="3">Corentin Tolisso<span class="shirt">24</span></li>

Моя цель - извлечь "Corentin Tolisso", номер рубашки "24", а также значения data-x и data-y.

Пока я могу заставить его работать со значениями, которые находятся в пределах >...<, используя HTML Agility Pack.

Однако я не могу найти способ извлечь числа из data-x и data-y.

Я скопировал строку HTML в новый jsfiddle, который точно описывает то, что получает мой код C #, между >...<.

Как извлечь значения data-x и data-y?

Примечание: использование String.IndexOf работает нормально, хотя и убирает гибкость. Это моя запасная стратегия.

Примечание 2: я посмотрел здесь и здесь , оба из которых дают мне некоторое представление, но мне все еще трудно применить его к C #.

1 Ответ

0 голосов
/ 02 июля 2018

1 способ будет использовать (["'])(?:(?=(\\?))\2.)*?\1 Он также поддерживает вложенные кавычки

Попробуйте по этой ссылке: https://regex101.com/r/cB0kB8/1

С JQuery это очень просто.

Также посмотрите пример, найденный здесь: Получение значения ввода текста HTML

<form name="input" action="handle_email.php" method="post">
Email: <input type="text" name="email" />
<input type="submit" value="Newsletter" />
</form> 
<a id="regLink" href="http://mywebsite.com/register?user_email=">Register</a>

$('input[name="email"]').change(function(){
alert($('#regLink').attr('href')+$('input[name="email"]').val());
});

Надеюсь, это поможет вам!

...