Экранирование кавычек regex в C#

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
194
Благодарностей
20
Баллы
18
Помогите экранировать кавычки regex в C# , пользывался вот этим советом, не помогло.
Код:
Tab tab = instance.ActiveTab;
if (tab.IsBusy) tab.WaitDownloading();
string text = tab.DomText;

var regex = new System.Text.RegularExpressions.Regex(@"(?<=<div\ class="ml1-StatsColumn_MiniCorner"></div><div\ class="ml1-StatsColumn_MiniValue\ ">).*?(?=</div></div>)");
// Поиск совпадения по указанному номеру
var matchCollection = regex.Matches(text);
if (0 < matchCollection.Count && matchCollection[0].Success)
    project.List[""].Add(matchCollection[0].Value);
 

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 651
Благодарностей
1 319
Баллы
113
  • Спасибо
Реакции: trecho, Rimen и Vasyl1

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
162
Баллы
43
Продублируйте двойные кавычки
Код:
var regex = new System.Text.RegularExpressions.Regex(@"(?<=<div\ class=""ml1-StatsColumn_MiniCorner""></div><div\ class=""ml1-StatsColumn_MiniValue\ "">).*?(?=</div></div>)");
 
  • Спасибо
Реакции: trecho и Vasyl1

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
194
Благодарностей
20
Баллы
18

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 651
Благодарностей
1 319
Баллы
113
Вы спросили как экранировать, вам ответили. Мы же не проверяли ваш код и тем более регулярку...
 

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
162
Баллы
43
в 9 строке - не указано название списка
project.List[""].Add(matchCollection[0].Value);
 

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
194
Благодарностей
20
Баллы
18
Вы спросили как экранировать, вам ответили. Мы же не проверяли ваш код и тем более регулярку...
в 9 строке - не указано название списка
project.List[""].Add(matchCollection[0].Value);
Я просто конвертировал в С# . и просто вставил код в него, я не знаю что это за список и как его убрать. Помогите пожалуйста.
 

Vasyl1

Client
Регистрация
11.12.2016
Сообщения
194
Благодарностей
20
Баллы
18
Я просто конвертировал в С# . и просто вставил код в него, я не знаю что это за список и как его убрать. Помогите пожалуйста.
Спасибо, решил . Сделал вот так

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

var regex = new System.Text.RegularExpressions.Regex(@"(?<=<div\ class=""ml1-StatsColumn_MiniCorner""></div><div\ class=""ml1-StatsColumn_MiniValue\ "">).*?(?=</div></div>)");
// Поиск совпадения по указанному номеру
var matchCollection = regex.Matches(text);
if (0 < matchCollection.Count && matchCollection[0].Success)
    project.Variables["one_corner"].Value = matchCollection[0].Value;
 
  • Спасибо
Реакции: Anfim777

inotoxic

Client
Регистрация
20.04.2015
Сообщения
354
Благодарностей
162
Баллы
43
по регекс вернет одно значение, в переменную - "one_corner"

C#:
Tab tab = instance.ActiveTab;
if (tab.IsBusy) tab.WaitDownloading();
string text = tab.DomText;
var regex = new System.Text.RegularExpressions.Regex(@"(?<=<div\ class=""ml1-StatsColumn_MiniCorner""></div><div\ class=""ml1-StatsColumn_MiniValue\ "">).*?(?=</div></div>)");
project.Variables["one_corner"].Value = System.Text.RegularExpressions.Regex.Match(text, regex).Value;
 

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