Как взять нутхноже слово/число регуляркой если слова/числа всегда меняются?

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
Как вытащить нутхноже слово/число регуляркой если слова/числа всегда меняются?

Вот пример:
7584751475;Friday;27.11.2020;18:48;

всегда меняется:
7584751475
Friday
27.11.2020
18:48

Pазделитель:
; (всегда один и тот же)


-> нужно взять дату (день.месяц.год)
 

Roman48

Client
Регистрация
28.02.2016
Сообщения
2 058
Благодарностей
745
Баллы
113
Как вариант, сперва берешь месяц потом год и дату и потом складываешь как нужно
1611765897891.png
 
  • Спасибо
Реакции: Lextor

Gunjubasik

Client
Регистрация
30.05.2019
Сообщения
3 507
Благодарностей
1 311
Баллы
113
Как вытащить нутхноже слово/число регуляркой если слова/числа всегда меняются?

Вот пример:
7584751475;Friday;27.11.2020;18:48;

всегда меняется:
7584751475
Friday
27.11.2020
18:48

Pазделитель:
; (всегда один и тот же)


-> нужно взять дату (день.месяц.год)
Используйте Split и раскидайте нужные значения по нужным переменным:
71364
 
  • Спасибо
Реакции: Lextor

devffy

Client
Регистрация
16.03.2019
Сообщения
542
Благодарностей
188
Баллы
43
во кодиком проще))
C#:
string account = project.Variables["stroka"].Value; // переменная со значением 7584751475;Friday;27.11.2020;18:48;
project.Variables["chislo"].Value = account.Split(';')[0];
project.Variables["day"].Value = account.Split(';')[1];
project.Variables["date"].Value = account.Split(';')[3];
project.Variables["time"].Value = account.Split(';')[4];
 
  • Спасибо
Реакции: systema и Lextor

Alexmd

Client
Регистрация
10.12.2018
Сообщения
1 022
Благодарностей
1 424
Баллы
113
C#:
string str = "7584751475;Friday;27.11.2020;18:48;";
return str.Split(';')[2]; // это, если уверены, что дата всегда будет третьим значением
return str.Split(';').Where(x=>DateTime.TryParse(x, out DateTime d)).First(); // а это более универсальный метод. Он сам отыщет дату в строке и вернет ее
 
  • Спасибо
Реакции: Lextor

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
благодарю всех за помощь.
Очень приятно видеть столько много помогающих с разным решениям одной и той же выше написанной проблемы что привод к одной и той же цели.

------------------------------------------------------------
Второй вопрос и я думаю последний по этой теме)

Теперь нужно проверить если на данный момент полученная дата 27.11.2020 в переменной old_data старше чем 60 дней то выходим по зеленой. Eсли младше 60 дней то выходим по красной.

Kак сделать? Интересно какие варианты найдутся у вас на этот раз)?
 
  • Спасибо
Реакции: Alexmd

Alexmd

Client
Регистрация
10.12.2018
Сообщения
1 022
Благодарностей
1 424
Баллы
113

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18

Alexmd

Client
Регистрация
10.12.2018
Сообщения
1 022
Благодарностей
1 424
Баллы
113
Ну, так приведите ее в нормальный формат
C#:
string old_data = "1.1:2020".Replace(":",".");
if(DateTime.Now < DateTime.Parse(old_data).AddDays(60))
    throw new Exception();
 

samsonnn

Client
Регистрация
02.06.2015
Сообщения
1 755
Благодарностей
1 431
Баллы
113
Как вытащить нутхноже слово/число регуляркой если слова/числа всегда меняются?

Вот пример:
7584751475;Friday;27.11.2020;18:48;

всегда меняется:
7584751475
Friday
27.11.2020
18:48

Pазделитель:
; (всегда один и тот же)


-> нужно взять дату (день.месяц.год)



Код:
(?<=\d+;\w+;).*(?=;\d+:\d+;)
 
  • Спасибо
Реакции: Lextor

Lextor

Client
Регистрация
19.06.2020
Сообщения
172
Благодарностей
19
Баллы
18
Ну, так приведите ее в нормальный формат
C#:
string old_data = "1.1:2020".Replace(":",".");
if(DateTime.Now < DateTime.Parse(old_data).AddDays(60))
    throw new Exception();
Код к сожалению не работает. Я открыл новую тему с правильным заголовком. Если будет решение или рабочий год буду благодарен вам.

Bот ссылка на тему актуальную:
 

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