Регулярные выражения на все случаи жизни

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
  • Спасибо
Реакции: Gizmond

kapelan28

Client
Регистрация
22.09.2015
Сообщения
469
Благодарностей
185
Баллы
43
Подскажите, как дополнить регулярку, чтобы гарантировано брал только первое совпадение?
сейчас имею:
PHP:
= @"https://post\.pinterest\.com/f/a/.*?(?=""\ style=)";
Вроде оно и так берет нужную ссылку, но хотелось бы перестраховаться (регулярка из DOM может до 8 ссылок вытянуть).
 

colcefer

Новичок
Регистрация
20.01.2016
Сообщения
20
Благодарностей
0
Баллы
1
<tr class='red'>
<td width='27%' class='first' title='2017-12-24 21:31:48'>21:31:48</td>
<td width='14%'>SELL</td>
<td width='30%'>0.00097728</td>
<td width='29%'>2.249<i>41041</i></td>
</tr>
<tr class='green'>
<td width='27%' class='first' title='2017-12-24 21:31:44'>21:31:44</td>
<td width='14%'>BUY</td>
<td width='30%'>0.00098753</td>
<td width='29%'>812.030<i>160</i></td>
</tr>
как поделить на строки в списке от <tr> до </tr> ???
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

colcefer

Новичок
Регистрация
20.01.2016
Сообщения
20
Благодарностей
0
Баллы
1
В настройках списка в качестве разделителя указать "Свой Regex"
Код:
<tr[\w\W]*?</tr>
C этим все таки разобрался)) А как сложить все элементы в списке? там тупо цифры, к чему можно прибегнуть)))
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

colcefer

Новичок
Регистрация
20.01.2016
Сообщения
20
Благодарностей
0
Баллы
1
return project.Lists["List"].Select(int.Parse).Sum(); не сработал, список назва spisok и в кавычках поставил spisok
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

colcefer

Новичок
Регистрация
20.01.2016
Сообщения
20
Благодарностей
0
Баллы
1

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

colcefer

Новичок
Регистрация
20.01.2016
Сообщения
20
Благодарностей
0
Баллы
1

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
А сборки какие нужно подключать? для работы этого кусочка кода?
Ничего не нужно подключать!
В кубике C# нужно снять чекбокс с "Не возвращать значение" и выбрать переменную, в которую будет падать результат.
 

colcefer

Новичок
Регистрация
20.01.2016
Сообщения
20
Благодарностей
0
Баллы
1
Ничего не нужно подключать!
В кубике C# нужно снять чекбокс с "Не возвращать значение" и выбрать переменную, в которую будет падать результат.
черт подери, не работает
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
черт подери, не работает
Проверяйте, чтоб в списке не было пустых строк.
Либо так
C#:
double result;
return project.Lists["List"].Select(x => x.Replace(',', '.')).Where(x => double.TryParse(x, out result)).Select(double.Parse).Sum();
 

colcefer

Новичок
Регистрация
20.01.2016
Сообщения
20
Благодарностей
0
Баллы
1
0.4174173
0.50533181
0.50533181
0.16667859
0.54078594
230.03462

Там примерно вот такой список, после последней строки сложились лишь целые которые были в списке
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

xopek2007

Client
Регистрация
10.05.2013
Сообщения
101
Благодарностей
8
Баллы
18
text_abc
notext_abc
randam_ABC
word_abc
number_Abc
Notext_abc
Text_ABC
Как выбрать текст который не содержит text, notext и random, но содержит авс не зависимо от содержания и регистра?
 

seodima

Client
Регистрация
21.09.2014
Сообщения
199
Благодарностей
60
Баллы
28
У Вас в шапке регулярка для e-mail не совсем корректная. Почту типа [email protected] возьмёт неверно.
Более правильно будет так:
Код:
((([0-9A-Za-z]{1}[-0-9A-z\.]{1,}[0-9A-Za-z]{1})|([0-9А-Яа-я]{1}[-0-9А-я\.]{1,}[0-9А-Яа-я]{1}))@([-A-Za-z]{1,}\.){1,2}[-A-Za-z]{2,})
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
  • Спасибо
Реакции: xopek2007

xopek2007

Client
Регистрация
10.05.2013
Сообщения
101
Благодарностей
8
Баллы
18
Спасибо, а если есть еще текст в строках, то эта регулярка не робит:(
Например:
stile_text_abc
stile_status_abc
site_randam_ABC
dom_word_abc
vk_number_Abc
Web Status_abc
Get Text_ABC
Она просто выдает весь текст, пробовал добавить \w, но ни чего не получается.
 

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 100
Баллы
113
  • Спасибо
Реакции: xopek2007

xopek2007

Client
Регистрация
10.05.2013
Сообщения
101
Благодарностей
8
Баллы
18

WEISS

Client
Регистрация
11.12.2015
Сообщения
115
Благодарностей
25
Баллы
28
Есть список содержащий строки такого вида:

1990|Александр|Шевченко|city-2|в друзья-1
3431|Анна|Шевелева|city-2|в друзья-1
3819|Алексей|Варицкий|city-1|в друзья-1
4776|Алексей|Потапов|city-1|в друзья-1

а как регуляркой привести список в такой вид

1990
3431
3819
4776

Спасибо.
 

doc

Client
Регистрация
30.03.2012
Сообщения
8 606
Благодарностей
4 597
Баллы
113
Есть список содержащий строки такого вида:

1990|Александр|Шевченко|city-2|в друзья-1
3431|Анна|Шевелева|city-2|в друзья-1
3819|Алексей|Варицкий|city-1|в друзья-1
4776|Алексей|Потапов|city-1|в друзья-1

а как регуляркой привести список в такой вид

1990
3431
3819
4776

Спасибо.
(^\d+)[^\r\n]+(?=\r?\n)
заменить по регулярке на $1
 

Gizmond

Client
Регистрация
18.02.2017
Сообщения
264
Благодарностей
51
Баллы
28
Привет! Подскажите регулярку, чтобы удалить из списка строки содержащие 3 точки больше
 

woober

Client
Регистрация
07.04.2015
Сообщения
211
Благодарностей
123
Баллы
43

Gizmond

Client
Регистрация
18.02.2017
Сообщения
264
Благодарностей
51
Баллы
28

doc

Client
Регистрация
30.03.2012
Сообщения
8 606
Благодарностей
4 597
Баллы
113

bizzon

Client
Регистрация
08.09.2015
Сообщения
1 088
Благодарностей
126
Баллы
63
Есть список содержащий строки такого вида:

gdfgdd|545
uiukjkjgfgf|434
tryryybf|5454

а как регуляркой привести список в такой вид

gdfgdd
uiukjkjgfgf
tryryybf

Пробовал вот так, но в N++ показывает через пустую строку
(^|\r|\n).*(?=\|\d)


Спасибо
 

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