Автор Тема: Необходимо из полученной версии удалить 1-ю точку  (Прочитано 182 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Xabib2302 [?]

  • Новичок
  • *
  • Сообщений: 45
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Доброе время суток. Помогите решить одну загвоздку. Сделал скрипт, который удаляет 3 последние цифры из версии файла до 1-ой точки. Как удалить из измененной версии 1-ю точку

Код: AutoIt [Выделить]
FileMove(@ScriptDir & '\Opera_GX_*_Setup_x64.exe', @ScriptDir & '\Opera GX\Opera_GX_Setup_x64.exe', 9)
If FileExists(@ScriptDir & '\Opera GX\Opera_GX_Setup_x64.exe') Then
$OperaVer2 = FileGetVersion(@ScriptDir & '\Opera GX\Opera_GX_Setup_x64.exe')
ConsoleWrite($OperaVer2 & @CRLF) ; Opera v1.0.0.0
$OperaVer2 = StringLeft($OperaVer2, StringInStr($OperaVer2, ".", 0, -3))
ConsoleWrite($OperaVer2 & @CRLF) ; Opera v1.
EndIf
MsgBox(0,'',$OperaVer2)



Русское сообщество AutoIt


Оффлайн xXx [?]

  • Осваивающий
  • **
  • Сообщений: 84
  • Репутация: 25
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.x.x
На примере блокнота, выводит только цифры до первой точки:
Код: AutoIt [Выделить]
$OperaVer2 = FileGetVersion('notepad.exe')
$OperaVer2 = StringRegExpReplace($OperaVer2, '^(\d+).+', '$1')
MsgBox(0, '', $OperaVer2)


Оффлайн InnI [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 4102
  • Репутация: 1089
    • Награды
  • Версия AutoIt: 3.3.14.0
Xabib2302
Если вам важно найти третью точку с конца, то так
Код: AutoIt [Выделить]
$OperaVer2 = StringLeft($OperaVer2, StringInStr($OperaVer2, ".", 0, -3) - 1)

Но проще искать первую точку с начала
Код: AutoIt [Выделить]
$OperaVer2 = StringLeft($OperaVer2, StringInStr($OperaVer2, ".") - 1)


Русское сообщество AutoIt

Re: Необходимо из полученной версии удалить 1-ю точку
« Ответ #2 Отправлен: Июль 14, 2019, 14:27:51 »

Оффлайн IMStrelcov [?]

  • Новичок
  • *
  • Сообщений: 60
  • Репутация: 2
  • Пол: Мужской
  • CTPEJIbLLOB
    • Награды
  • Версия AutoIt: 3.3.14.0
удалить все после первой точки
Код: AutoIt [Выделить]
$OperaVer2=StringRegExpReplace($OperaVer2, '([^.]*).*', '$1')

удалить все после последней точки
Код: AutoIt [Выделить]
$OperaVer2=StringRegExpReplace($OperaVer2, '(.*)\..*', '$1')


Русское сообщество AutoIt

Re: Необходимо из полученной версии удалить 1-ю точку
« Ответ #3 Отправлен: Июль 14, 2019, 16:11:16 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
1 Ответов
2518 Просмотров
Последний ответ Февраль 26, 2014, 22:31:13
от alex33
17 Ответов
10027 Просмотров
Последний ответ Август 19, 2016, 22:27:46
от Core2Duo76
18 Ответов
4167 Просмотров
Последний ответ Ноябрь 21, 2014, 22:29:46
от iwak
1 Ответов
2479 Просмотров
Последний ответ Июль 07, 2015, 22:32:58
от InnI
10 Ответов
2915 Просмотров
Последний ответ Сентябрь 27, 2015, 05:21:20
от joiner
2 Ответов
1774 Просмотров
Последний ответ Ноябрь 10, 2015, 01:07:51
от CreatoR
0 Ответов
742 Просмотров
Последний ответ Июнь 26, 2016, 03:21:09
от SNAK
4 Ответов
843 Просмотров
Последний ответ Ноябрь 02, 2017, 03:29:22
от dr.room
1 Ответов
180 Просмотров
Последний ответ Февраль 26, 2019, 23:18:56
от ra4o
4 Ответов
169 Просмотров
Последний ответ Апрель 22, 2019, 20:55:06
от joiner