Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] Получение имени скрипта без расширения исходя из значения @ScriptName (http://forum.oszone.net/showthread.php?t=184549)

Smokie_id11243755 03-09-2010 11:47 1487755

Получение имени скрипта без расширения исходя из значения @ScriptName
 
Хочу получить имя скрипта, но без расширения.
Как из значения макроса @ScriptName удалить символы с конца и до точки?

FlatX007 03-09-2010 13:21 1487803

Код:

StringTrimRight(@ScriptName, 4)

madmasles 03-09-2010 13:22 1487805

Smokie_id11243755,
Попробуйте так:
Код:

; 1-й вариант
$sNameScript = StringLeft(@ScriptName, StringInStr(@ScriptName, '.') - 1)
MsgBox(0, '1', $sNameScript)
; 2-й вариант
$sNameScript = StringTrimRight(@ScriptName, StringInStr(@ScriptName, '.') - 1)
MsgBox(0, '2', $sNameScript)
; 3-й вариант
$sNameScript = StringMid(@ScriptName, 1, StringInStr(@ScriptName, '.') - 1)
MsgBox(0, '3', $sNameScript)
; 4-й вариант
$sNameScript = StringRegExpReplace(@ScriptName, '(.*?)\.\E.*', '\1')
MsgBox(0, '4', $sNameScript)


Smokie_id11243755 03-09-2010 17:39 1488005

madmasles, а можно какнить с конца до первой найденной точки?

Iska 03-09-2010 18:29 1488038

Можно. Function StringInStr:
Цитата:

StringInStr ( "string", "substring" [, casesense [, occurrence [, start [, count]]]] )

occurrence : [optional] Which occurrence of the substring to find in the string. Use a negative occurrence to search from the right side. The default value is 1 (finds first occurrence).


FlatX007 03-09-2010 18:47 1488053

Цитата:

Цитата Smokie_id11243755
madmasles, а можно какнить с конца до первой найденной точки? »

Оно вам это надо ?

madmasles 03-09-2010 20:54 1488112

Цитата:

Цитата Smokie_id11243755
а можно какнить с конца до первой найденной точки »

Код:

; 5-й вариант
$sNameScript = StringTrimRight(@ScriptName, StringInStr(@ScriptName, '.', 0, -1) + 1)
MsgBox(0, '3', $sNameScript)


Creat0R 03-09-2010 21:53 1488140

Smokie_id11243755,
Предупреждение за нарушение правил форума, пункт 2.7:

Цитата:

В заголовке темы обязательно обозначайте название предмета, которого касается вопрос, а в теле сообщения максимально подробно опишите проблему (приведите аппаратную/программную конфигурацию, а также изложите ситуацию, в которой возникает проблема). Темы с несодержательными или слишком общими заголовками будут закрываться или переноситься в раздел "Зона тестирования" в зависимости от политики конкретного форума. Подробнее о принципах создания тем читайте в этом документе и Правилах форумов.
Переименуйте пожалуйста тему.

Получение из полного пути:

Код:

$sFileName = StringRegExpReplace(@ScriptFullPath, '^.*\\|\.[^\.]*$', '')
MsgBox(64, '', $sFileName)

P.S
Посмотрие ещё на эту тему: Деление пути к файлу на части

Smokie_id11243755 04-09-2010 17:13 1488507

Цитата:

Цитата Creat0R
Переименуйте пожалуйста тему »

А как это сделать?

Creat0R 04-09-2010 18:05 1488544

Цитата:

Цитата Smokie_id11243755
как это сделать? »

При редактирований первого сообщения есть такая возможность.


Время: 08:23.

Время: 08:23.
© OSzone.net 2001-