Что нового

RegExp Помочь с выражением замены в тексте

Firestarter

Новичок
Сообщения
54
Репутация
0
Автор
F

Firestarter

Новичок
Сообщения
54
Репутация
0
как я написал, до 59 минут.
и когда доходит до 1ч то формат становится:
39 days 01:00
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Код:
$text = StringRegExpReplace("39 days 40 min", "(\d+ days) (\d+) min", "$1 00:$2")
 
Автор
F

Firestarter

Новичок
Сообщения
54
Репутация
0
Поправьте плз:

Код:
$data = '47 days 4 min';
$time_runing_asic = StringRegExpReplace($data, "(\d+ days) (\d+) min", "$1 00:$2")


Выводит:
47 days 00:4

А нужно:
47 days 00:04
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
А нужно:
47 days 00:04
Да, что то я уже теряю хватку :biggrin:
Было лень придумывать какой то большой RegExp для этого поэтому решил проблему так:
Код:
$data = '47 days 4 min';
$matches = StringRegExp($data, "(\d+) days (\d+) min",3)
$text = StringFormat("%d days 00:%02d", $matches[0], $matches[1])
 
Автор
F

Firestarter

Новичок
Сообщения
54
Репутация
0
Снова я в засаде...(

Код:
1. $data = '47 days 4 min';
2. $matches = StringRegExp($data, "(\d+) days (\d+) min",3)
3. $text = StringFormat("%d days 00:%02d", $matches[0], $matches[1])
4.
5. $data = '47 days 00:14';
6. $matches = StringRegExp($data, "(\d+) days (\d+) min",3)
7. $text = StringFormat("%d days 00:%02d", $matches[0], $matches[1])


Теперь вот такая ошибка:

"D:\111.au3" (7) : ==> Subscript used on non-accessible variable.:
$text = StringFormat("%d days 00:%02d", $matches[0], $matches[1])
$text = StringFormat("%d days 00:%02d", $matches^ ERROR

Исходный текст может быть как:
47 days 01:04 так и 47 days 4 min
1й вариант мы не трогаем, только второй.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Ну а додумать не получилось?
Код:
$data = '47 days 00:14';
$matches = StringRegExp($data, "(\d+) days (\d+) min", 3)
If Not @error Then
    $data = StringFormat("%d days 00:%02d", $matches[0], $matches[1])
EndIf
 
Последнее редактирование:
Верх