Что нового

Запуск файла, лишь по 6-ти первым уникальным символам

orange3100

Новичок
Сообщения
18
Репутация
0
Доброго времени суток уважаемые форумчане!

Имеются следующего вида файлы:

C:\J\VG\00. {TXT}\01.РС.01 - - - - (1).py
C:\J\VG\00. {TXT}\01.РС.02 - - - - (5).py
C:\J\VG\00. {TXT}\01.РС.03 - - - - (12).py

Первая часть имени, она const всегда, а вот вторая типа (1), (5), (12) она может меняться, необходимо создать скрипт на запуск файла зная 1-ые 6 символов.

Пытаюсь прикрутить выражение вида:

Код:
ShellExecute ("01.РС.03" & "*.py", "", 'C:\J\VG\00. {TXT}', "")


но безуспешно, выдает ошибку, что неправильно указано имя,

подскажите, плз, кто знает, где ошибка
 

Andrey_A

Продвинутый
Сообщения
323
Репутация
68
Код:
$sPath='C:\J\VG\00. {TXT}\'
$hSearch = FileFindFirstFile($sPath&'01.РС.01*py')
If $hSearch=-1 Then Exit
$sFile=FileFindNextFile($hSearch)
FileClose($hSearch)
If $sFile Then ShellExecute($sFile,'',$sPath)
 
Автор
O

orange3100

Новичок
Сообщения
18
Репутация
0
Код:
$sPath='C:\J\VG\00. {TXT}\'
$hSearch = FileFindFirstFile($sPath&'01.РС.01*py')
If $hSearch=-1 Then Exit
$sFile=FileFindNextFile($hSearch)
FileClose($hSearch)
If $sFile Then ShellExecute($sFile,'',$sPath)
Благодарю Вас! Эта штука работает, получается внутри shellexecute невозможно разместить регулярные выражения?
 

Andrey_A

Продвинутый
Сообщения
323
Репутация
68
невозможно разместить регулярные выражения?
ShellExecute, Run воспринимают точный путь, что касается FileFindFirstFile , почитайте внимательно - там НЕ регулярное выражение, а " Подстановочные символы (wildcards) маски" - это не тоже самое... (когда-то тоже путал).
 
Автор
O

orange3100

Новичок
Сообщения
18
Репутация
0
ShellExecute, Run воспринимают точный путь, что касается FileFindFirstFile , почитайте внимательно - там НЕ регулярное выражение, а " Подстановочные символы (wildcards) маски" - это не тоже самое... (когда-то тоже путал).
Спасибо! Эти знания еще предстоит пополнить!
 

Oki

Продвинутый
Сообщения
452
Репутация
62
Если, однако, возникнет потребность искать именно по регулярным выражениям, это тоже разрешимо. Для этого можно таким же путём брать абсолютно все файлы подряд и один за другим проверять на соответствие регулярному выражению.
 
Автор
O

orange3100

Новичок
Сообщения
18
Репутация
0
Если, однако, возникнет потребность искать именно по регулярным выражениям, это тоже разрешимо. Для этого можно таким же путём брать абсолютно все файлы подряд и один за другим проверять на соответствие регулярному выражению.
а в этом случае, он будет искать перебирать абсолютно все файлы или до 1-го совпадения, а далее запуск файла?
 

Oki

Продвинутый
Сообщения
452
Репутация
62
а в этом случае, он будет искать перебирать абсолютно все файлы или до 1-го совпадения, а далее запуск файла?
Хоть до первого совпадения, хоть найти все совпадения. И так, и так можно организовать указанным методом.
 

Oki

Продвинутый
Сообщения
452
Репутация
62
а можете предложить плз вариант?
Для рассмотренной здесь задачи в этом нет особого смысла, так как для этой задачи прекрасно срабатывает и маска. Что именно делать, когда маска не годится, но подходит какое-либо регулярное выражение, достаточно сформулировано в более раннем моём сообщении: перебирать файлы по самой общей маске и поставить условный оператор соответствия регулярному выражению.
 
Верх