Из DOM в список + значение изпеременной

vrb-by

Client
Регистрация
27.02.2016
Сообщения
128
Благодарностей
8
Баллы
18
Здравствуйте! Нужно одним действием получить строки из DOM по регулярке и отправить их в список с добавлением ";" и значения из переменной.

Пример:
по регулярке из DOM мы получили множество IP в список "IP" следующего вида:
192.100.1.1
198.333.33.44
А хотелось бы следующего вида:
192.100.1.1;значение переменной "текст" (192.100.1.1;2211)
198.333.33.44;значение переменной "текст" (198.333.33.44;2211)
 

vrb-by

Client
Регистрация
27.02.2016
Сообщения
128
Благодарностей
8
Баллы
18
Понимаю, что добавить нужно здесь ... а вот знаний не хватает(
{
if (matchCollection.Success)
project.Lists["IP"].Add(matchCollection.Value);
}
 

specialist

Client
Регистрация
28.12.2018
Сообщения
732
Благодарностей
343
Баллы
63
по регулярке из DOM мы получили множество IP:
192.100.1.1
А хотелось бы 192.100.1.1;2211
Без части html кода в которой прописаны ip и порт что-то детально сказать не возможно, вариантов много. Добавьте пример кода, в котором нужно найти.

Альтернатива, поиск и замена. Найдите кусок html от ip до порта и замените его на точку с запятой (хотя стандартный разделитель двоеточие). После получить по регулярке текст не составит проблем, данные уже в одной строке.
 

vrb-by

Client
Регистрация
27.02.2016
Сообщения
128
Благодарностей
8
Баллы
18
Если кому нужно!

Код:
Tab tab = instance.ActiveTab;
if (tab.IsBusy) tab.WaitDownloading();
string text = tab.DomText;

var regex = new System.Text.RegularExpressions.Regex(@"ВАШЕ_РЕГУЛЯРНОЕ_ВЫРАЖЕНИЕ");
// Поиск всех совпадений
var matchCollection = regex.Matches(text);
for(var i = 0; i < matchCollection.Count; i++)
{
    if (matchCollection[i].Success)
        project.Lists["ВАШ_СПИСОК"].Add(matchCollection[i].Value+";"+project.Variables["ВАША_ПЕРЕМЕННАЯ"].Value);
 

}
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)