powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Регулярное выражение с порядком
14 сообщений из 14, страница 1 из 1
Регулярное выражение с порядком
    #40022615
loggik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет

Есть задача распарсить строку с датой с помощью регулярного выражения.
Есть два выражения с разным порядком числа и месяца.

первое Jul\s?(0[1-9]|[12]\d|3[01])
Подхватит строки
Jul16
Jul 31

второе с обратным порядком
(0[1-9]|[12]\d|3[01])\s?Jul
Подхватит
16 Jul

Можно ли эти два выражения объединить в одно, чтобы оба порядка срабатывали

Пробовал что-то вроде
(0[1-9]|[12]\d|3[01])\s?Jul\s?(?!\1)(0[1-9]|[12]\d|3[01])
не проходит.

Заранее благодарю за помощь.
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022625
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
loggik
Можно ли эти два выражения объединить в одно, чтобы оба порядка срабатывали

А зачем? В рабочем проекте я бы предпочёл вариант с двумя разными, но более-менее понятными регулярками, чем с одной, но длинной и мозговыносящей, в которой разбирается только автор. Разве что здесь чисто спортивный интерес.
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022653
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
если есть два выражения, можно просто взять их в скобки и поставить между ними "или", если очень хочется
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022717
loggik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если решение у задачи есть нужно найти его, хотя бы и для спортивного интереса.
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022720
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я на 99% уверен, что на гитхабе есть (и не один) проект для парсинга даты в любом безумном формате
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022737
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
я на 99% уверен, что на гитхабе есть (и не один) проект для парсинга даты в любом безумном формате

На самом деле, обычный TryParse понимает кучу разных форматов, разве что, кроме каких-нибудь форматов индейцев Майя.
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022750
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Shocker.Pro
я на 99% уверен, что на гитхабе есть (и не один) проект для парсинга даты в любом безумном формате

На самом деле, обычный TryParse понимает кучу разных форматов, разве что, кроме каких-нибудь форматов индейцев Майя.
не думаю, что сможет понять Jul16, предложенный автором
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022757
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
не думаю, что сможет понять Jul16, предложенный автором

Ты не поверишь

Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
PS хх@хх:~$ [System.DateTimeOffset]::Parse('Jul16')

DateTime      : 7/16/2020 12:00:00 AM
UtcDateTime   : 7/15/2020 9:00:00 PM
LocalDateTime : 7/16/2020 12:00:00 AM
Date          : 7/16/2020 12:00:00 AM
Day           : 16
DayOfWeek     : Thursday
DayOfYear     : 198
Hour          : 0
Millisecond   : 0
Minute        : 0
Month         : 7
Offset        : 03:00:00
Second        : 0
Ticks         : 637304544000000000
UtcTicks      : 637304436000000000
TimeOfDay     : 00:00:00
Year          : 2020


Я когда-то давным-давно залазил в его реализацию декомпилером - а там пепец, чуть ли не нейросеть :))
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022761
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fkthat
Я когда-то давным-давно залазил в его реализацию декомпилером - а там пепец, чуть ли не нейросеть :))
Восхищен. Осталось сделать, чтобы он умел парсить "Позавчера"
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022863
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
Восхищен. Осталось сделать, чтобы он умел парсить "Позавчера"

Интересно, как он в общем случае будет распознавать дату вида 02.03.04 - это может быть и вполне валидным форматом dd.mm.yy, и таким же валидным форматом yy.mm.dd.
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022865
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну по идее, если форматтер принудительно не указан, он будет пользоваться текущией локалью. Поэтому результат будет несколько разный ))
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022877
fkthat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro
Ну по идее, если форматтер принудительно не указан, он будет пользоваться текущией локалью. Поэтому результат будет несколько разный ))

Код: powershell
1.
2.
3.
4.
5.
6.
7.
PS хх@хх:~$ [System.DateTimeOffset]::Parse('02.03.04', [System.Globalization.CultureInfo]::GetCultureInfo('ru-RU'))

DateTime      : 3/2/2004 12:00:00 AM

PS хх@хх:~$ [System.DateTimeOffset]::Parse('02.03.04', [System.Globalization.CultureInfo]::GetCultureInfo('en-US'))

DateTime      : 2/3/2004 12:00:00 AM


По русскороссийски 2 марта, по англоамерикански 3 февраля, год один и тот же.
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022921
loggik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господа, нужно только регулярное выражение, и ничего кроме.
остальное не интересует.
...
Рейтинг: 0 / 0
Регулярное выражение с порядком
    #40022922
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
loggik
Господа, нужно только регулярное выражение, и ничего кроме.
остальное не интересует.
Ну так решение дали, можно теперь и поговорить по теме топика
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Регулярное выражение с порядком
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]