Подскажите регулярку

andropovleva

Client
Регистрация
23.11.2019
Сообщения
586
Реакции
46
Баллы
28
Нужна регулярка что бы число 1990 разделил на
1
9
9
0
 
Нужна регулярка что бы число 1990 разделил на
1
9
9
0

Регулярка в этом случае оч. простая: точка. Либо: \d

77173
 
  • Спасибо
Реакции: andropovleva
а если к примеру число 02 на
0
2 ?
Все тоже самое.
Любая последовательность символов разбивается точкой (в качестве регурярки) на отдельные символы.
Вам нужно, чтобы в переменной было построчно разбито или в список построчно символы поместить?
 
в список построчно каждый символ, при регулярке . ноли не берутся в расчет.
 
Последнее редактирование:
@andropovleva Случайно удалились ваши сообщения, прошу прощения.
Вероятно, проблема не в том, что регулярка неправильно работает, а в том, что например макрос {-Profile.BornDay-} возвращает день без лидирующего нуля.
 
@andropovleva Случайно удалились ваши сообщения, прошу прощения.
Вероятно, проблема не в том, что регулярка неправильно работает, а в том, что например макрос {-Profile.BornDay-} возвращает день без лидирующего нуля.
какой то выход есть?
 
там число состоящее из 3 переменных


C#:
Развернуть Свернуть Копировать
string number = project.Variables["PERVAYA"].Value + project.Variables["VTORAYA"].Value + project.Variables["DESYATAYA"].Value;
var lst = project.Lists["numbers"];
foreach(char c in number) lst.Add(c.ToString());
 
C#:
Развернуть Свернуть Копировать
string number = project.Variables["PERVAYA"].Value + project.Variables["VTORAYA"].Value + project.Variables["DESYATAYA"].Value;
var lst = project.Lists["numbers"];
foreach(char c in number) lst.Add(c.ToString());

тоже та же проблема "макрос {-Profile.BornDay-} возвращает день без лидирующего нуля. "
 
тоже та же проблема "макрос {-Profile.BornDay-} возвращает день без лидирующего нуля. "

водишь всех за нос, сразу условие скажи полностью
C#:
Развернуть Свернуть Копировать
string bornday = project.Profile.BornDay.ToString();
if ( bornday.Length <= 1) bornday = "0" + bornday;
string number = bornday + project.Variables["PERVAYA"].Value + project.Variables["VTORAYA"].Value + project.Variables["DESYATAYA"].Value;
var lst = project.Lists["numbers"];
foreach(char c in number) lst.Add(c.ToString());
 
Последнее редактирование:
водишь всех за нос, сразу условие скажи полностью

C#:
Развернуть Свернуть Копировать
string number = "0" + project.Profile.BornDay.ToString() + project.Variables["PERVAYA"].Value + project.Variables["VTORAYA"].Value + project.Variables["DESYATAYA"].Value;
var lst = project.Lists["numbers"];
foreach(char c in number) lst.Add(c.ToString());
222у2.jpg

Получается вместо
1
0
0
8
1
9
9
8

3333333333333.jpg
 
опиши задачу полностью, тебе нужно взять дату дату рождения из профиля в формате ДеньМесяцГод и положить в список,
где разделителем выступает каждый символ ?
 
опиши задачу полностью, тебе нужно взять дату дату рождения из профиля в формате ДеньМесяцГод и положить в список,
где разделителем выступает каждый символ ?
да именно так, каждый символ в отдельную строчку. Выше был скрин, но его удалили случайно.
 
C#:
Развернуть Свернуть Копировать
string bornday = project.Profile.BornDay.ToString();
string bornmonth = project.Profile.BornMonth.ToString();
string bornyear = project.Profile.BornYear.ToString();
if ( bornday.Length <= 1) bornday = "0" + bornday;
if ( bornmonth.Length <= 1) bornmonth = "0" + bornmonth;
string number = bornday + bornmonth + bornyear;
var lst = project.Lists["numbers"];
foreach(char c in number) lst.Add(c.ToString());
 
  • Спасибо
Реакции: Alexmd и andropovleva
C#:
Развернуть Свернуть Копировать
string bornday = project.Profile.BornDay.ToString();
string bornmonth = project.Profile.BornMonth.ToString();
string bornyear = project.Profile.BornYear.ToString();
if ( bornday.Length <= 1) bornday = "0" + bornday;
if ( bornmonth.Length <= 1) bornmonth = "0" + bornmonth;
string number = bornday + bornmonth + bornyear;
var lst = project.Lists["numbers"];
foreach(char c in number) lst.Add(c.ToString());
Ура! Всё получилось, большое спасибо!)
 
  • Спасибо
Реакции: Ilshakin
Ура! Всё получилось, большое спасибо!)
:-) А еще можно вот так (через форматирование):
C#:
Развернуть Свернуть Копировать
string bornday = project.Profile.BornDay.ToString("00");
string bornmonth = project.Profile.BornMonth.ToString("00");
string bornyear = project.Profile.BornYear.ToString();
string number = bornday + bornmonth + bornyear;
var lst = project.Lists["numbers"];
foreach(char c in number) lst.Add(c.ToString());
 
  • Спасибо
Реакции: Alexmd
:-) а еще можно вот так
C#:
Развернуть Свернуть Копировать
DateTime.Parse(string.Format(@"{0},{1},{2}", project.Profile.BornDay, project.Profile.BornMonth, project.Profile.BornYear)).ToShortDateString().Where(x=>char.IsDigit(x)).ToList().ForEach(x=>project.Lists["filters"].Add(x.ToString()));
 

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