Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: Замена в именах знаков подчеркивания на их число 
Author Message
Flasher



PostPosted: Mon Apr 16, 2012 14:02    Post subject: Reply with quote

Название темы не соответствует задаче.
shveicar wrote:
каждый знак _ превращался в цифру, то есть
Неверно. Схема подразумевает не "каждый знак в цифру", а совпавшие символы в их кол-во.
Code:
'================================================
' Замена в именах выделенных папок/файлов
' первых одинаковых символов на их число
' Параметры: %WL <заменяемый символ>
'================================================
With WScript.Arguments
  If .Count = 0 Then WScript.Quit
  List = .Item(0) : Symbol = .Item(1)
End With
With CreateObject("Scripting.FileSystemObject")
  Set TF = .GetFile(List).OpenAsTextStream(1, -1)
  Do Until TF.AtEndOfStream
    F = TF.ReadLine
    If F > vbNullString Then
      FN = .GetFileName(F) : n = 1
      If InStr(FN, Symbol) = 1 Then
        Do While Symbol = Mid(FN, n, 1) : n = n + 1 : Loop
        If .FolderExists(F) Then .GetFolder(F).Name = n - 1 & Mid(FN, n) _
        Else .GetFile(F).Name = n - 1 & Mid(FN, n)
      End If
    End If
  Loop
End With


Last edited by Flasher on Mon Apr 16, 2012 14:34; edited 1 time in total
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group