Добрый день, коллеги!
Подскажите, к кому можно обратиться за помощью в составлении регулярного выражения?
Нужно из темы письма брать номер заказа, шаблон примерно такой:
"слово слово слово слово 000-000000000-000"
То есть в начале идет произвольное кол-во слов без цифр на разных языках, дальше идут цифры, разделенные тире "-" ( 0 = цифра).
Можно не привязываться к шаблону самого номера заказа, а руководствоваться правилом: номером заказа считать то, что стоит после первого вхождения цифры, включая эту цифру.
Простите что неловко объясняю, терминологией владею плохо.
Нужно получать этот самый номер заказа и дальше с ним работать...
Помощь в составлении регулярного выражения
-
- Сообщения: 17
- Зарегистрирован: 07.04.2019 17:32
-
- Сообщения: 492
- Зарегистрирован: 21.01.2018 18:09
Re: Помощь в составлении регулярного выражения
Я правильно вас понял что вы не знаете структуру числового кода и он каждый раз разный, или все таки структура неизменна как на примере
Три числа тире 9 чисел - тире 3 числа?
Если структура постоянная то возможно будет не сложно.
Вот такие варианты могут сработать
\d{3}[-]\d{9}[-]\d{3}
или
\d{3}-\d{9}-\d{3}
Если количество символом между тире разное то попробовать вот такое более простое выражение
Попробуйте использовать сервис https://regex101.com/
или
http://regexpres.narod.ru/calculator.html
Три числа тире 9 чисел - тире 3 числа?
Если структура постоянная то возможно будет не сложно.
Вот такие варианты могут сработать
\d{3}[-]\d{9}[-]\d{3}
или
\d{3}-\d{9}-\d{3}
Если количество символом между тире разное то попробовать вот такое более простое выражение
Попробуйте использовать сервис https://regex101.com/
или
http://regexpres.narod.ru/calculator.html
-
- Сообщения: 80
- Зарегистрирован: 20.11.2017 13:22
Re: Помощь в составлении регулярного выражения
в скобки не забудьте обернуть выражение чтобы была capture группа
https://regex101.com/r/XEuygl/1/ - вот песочница
синтаксис если что - под java
https://regex101.com/r/XEuygl/1/ - вот песочница
синтаксис если что - под java
-
- Сообщения: 17
- Зарегистрирован: 07.04.2019 17:32
Re: Помощь в составлении регулярного выражения
спасибо большое!
А можно сделать такое выражение, которое будет работать по принципу:
номером заказа считать первую встреченную цифру в теме письме и все последующие символы?
Например
"Номер заказа 345-4353-adfsa-344" = "345-4353-adfsa-344"
"Order ID number 3-4254235asdfa" = "34254235asdfa"
"43534-dfds-345" = "43534-dfds-345"
У вас там стоит "попробовать вот такое более простое выражение", а дальше ничего,может, забыли вписать?:-)
Заранее спасибо за ответ!
А можно сделать такое выражение, которое будет работать по принципу:
номером заказа считать первую встреченную цифру в теме письме и все последующие символы?
Например
"Номер заказа 345-4353-adfsa-344" = "345-4353-adfsa-344"
"Order ID number 3-4254235asdfa" = "34254235asdfa"
"43534-dfds-345" = "43534-dfds-345"
У вас там стоит "попробовать вот такое более простое выражение", а дальше ничего,может, забыли вписать?:-)
Заранее спасибо за ответ!
Федоров Илья писал(а): ↑21.07.2020 17:51Я правильно вас понял что вы не знаете структуру числового кода и он каждый раз разный, или все таки структура неизменна как на примере
Три числа тире 9 чисел - тире 3 числа?
Если структура постоянная то возможно будет не сложно.
Вот такие варианты могут сработать
\d{3}[-]\d{9}[-]\d{3}
или
\d{3}-\d{9}-\d{3}
Если количество символом между тире разное то попробовать вот такое более простое выражение
Попробуйте использовать сервис https://regex101.com/
или
http://regexpres.narod.ru/calculator.html
-
- Сообщения: 492
- Зарегистрирован: 21.01.2018 18:09
Re: Помощь в составлении регулярного выражения
Более простое не помню уже что там было. Забудем.
Используйте сервисы по ссылкам экспериментируйте и все получится.
Используйте сервисы по ссылкам экспериментируйте и все получится.