Помогите с регулярным выражением

  • Автор темы Автор темы mig-z
  • Дата начала Дата начала

mig-z

Client
Регистрация
05.12.2014
Сообщения
311
Реакции
71
Баллы
28
Надо найти все цифры между тегами.

Есть текст:
</b> 1'309<br>
Мне нужно выдернуть 1309 без знака '

Помогите пожалуйста, кто знает решение.
 
И если текст:
</b> 1'309'555<br>
Тоже нужны цифры без знака '
 
Можно заменой:

MGoNnI3.jpg
 
Можно заменой:

MGoNnI3.jpg
Сори, текст не весь написал.
Код:
Развернуть Свернуть Копировать
Сори, текст не весь написал.
<div class="tab">
<hr class="hr2">
<b>Валюта расчетов:</b> Российский рубль<br><b>Сумма на счету:</b> 1'309<br>
<b>Текущее:</b> 0<br>
<b>Подготовлено:</b> 0<br>
<hr class="hr2">
</div>

Вот, и я по очереди выдергиваю в разные переменные. 1309, 0, 0.
Через замену делаю сейчас (меняю знак ' на пустоту). Но хочется регулярным выражением сразу все цифры нужные брать, для саморазвития :)
 
Код:
Развернуть Свернуть Копировать
(?<=Сумма\ на\ счету:</b>\ )[\d']+(?=<br>)

Такой регуляркой получайте, потом заменяйте все лишние символы. Сразу регуляркой получить одни цифры не получится.
 
  • Оценить
Реакции: mig-z
Код:
Развернуть Свернуть Копировать
(?<=Сумма\ на\ счету:</b>\ )[\d']+(?=<br>)

Такой регуляркой получайте, потом заменяйте все лишние символы. Сразу регуляркой получить одни цифры не получится.
так не получится
Жаль :( Я думал комбинациями из Утверждений можно добиться. Спасибо за ответы.
 
Жаль :( Я думал комбинациями из Утверждений можно добиться. Спасибо за ответы.
C#:
Развернуть Свернуть Копировать
project.Lists["list"].Clear();                     
var res = project.Variables["response"].Value;
var regex = new Regex(@"(?<=</b>).*?(?=<br>)");
var list = project.Lists["list"];

regex.Matches(res).Cast<Match>().ToList().ForEach(m=>list.Add(m.Value.Replace(" ", "")
                                                                     .Replace("'", "")));

немного не правильно, вот отредактированный
C#:
Развернуть Свернуть Копировать
project.Lists["list"].Clear();                       
var res = project.Variables["response"].Value.Replace(" ", "").Replace("'", "");
var regex = new Regex(@"(?<=</b>)\d+.*?(?=<br>)");
var list = project.Lists["list"];

regex.Matches(res).Cast<Match>().ToList().ForEach(m=>list.Add(m.Value));
 
  • Оценить
Реакции: mig-z
C#:
Развернуть Свернуть Копировать
project.Lists["list"].Clear();                    
var res = project.Variables["response"].Value;
var regex = new Regex(@"(?<=</b>).*?(?=<br>)");
var list = project.Lists["list"];

regex.Matches(res).Cast<Match>().ToList().ForEach(m=>list.Add(m.Value.Replace(" ", "")
                                                                     .Replace("'", "")));

немного не правильно, вот отредактированный
C#:
Развернуть Свернуть Копировать
project.Lists["list"].Clear();                      
var res = project.Variables["response"].Value.Replace(" ", "").Replace("'", "");
var regex = new Regex(@"(?<=</b>)\d+.*?(?=<br>)");
var list = project.Lists["list"];

regex.Matches(res).Cast<Match>().ToList().ForEach(m=>list.Add(m.Value));
Ого! Спасибо за труд!
 
@ssXXXss
а можешь подсказать как прописать чтобы искало регуляркой из DOM?
и положить все в список

спасибо
 
DOM в переменную занеси и потом уже этот кусок корда
 
  • Оценить
Реакции: deopl

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