1

Тема: AHK: RegExMatch

Приветствую, дорогие кодеры!
Решил вспомнить молодость, и на новой работе появилась возможность оптимизировать рабочий процесс. Я понимаю, что вопрос уж очень простой  и возможно не достоен данной темы, но я все никак не могу разобраться в RegExMath/Replace. Суть:
Есть переменная с текстом, к примеру:

var := "1232-214124 Приветствую всех 214, 21 (19.12.2024)"

Нужно вытащить только 1232-214124.
Раньше в подобных функциях как рыба в воде плавал, сейчас же читая документацию, вообще ничего понять не могу. Спасибо!

2

Re: AHK: RegExMatch

Надо составить шаблон типа "четыре цифры, потом тире, потом шесть цифр, далее пробел, затем любое количество любых символов". А после поиска глянуть содержимое переменной, отвечающую за "четыре цифры, потом тире, потом шесть цифр". Если соответствие найдено, то выдать найденное, в противном случае написать "соответствие не найдено".

3

Re: AHK: RegExMatch

Как верно указано, нужно сначала определить шаблон. Что именно нужно вытащить, по какому принципу? Символы с начала строки до первого пробела? Символы, включающие только цифры и дефис? Только с начала строки, или в любом месте? Цифры и дефис только в такой комбинации, или в любой?

Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder

4 (изменено: qwerlog123, 2024-12-19 23:22:18)

Re: AHK: RegExMatch

teadrinker,
Мне из текста нужно вытянуть в переменную только "числа-числа", к примеру  "111-111".

5 (изменено: qwerlog123, 2024-12-19 23:22:10)

Re: AHK: RegExMatch

teadrinker,
А так, да, верно. Числа только сначала строки. Числа до и после дефиса, включающие в себя сам дефис. До пробела.

6

Re: AHK: RegExMatch

Попробуйте так:

var := "1232-214124 Приветствую всех 214, 21 (19.12.2024)"
MsgBox % RegExReplace(var, "^\d+-\d+\K\s.*")
Разработка AHK-скриптов:
e-mail dfiveg@mail.ru
Telegram jollycoder