Jump to content

Recommended Posts

Posted

hello, i'm new to this function so i need some help doing this,
btw, i need to clear up my folder of work by deleting some files

example file inside folder :

info000001 to info999999

but i want to delete files name other than info(number)

Func _delete()
    $dir = @ScriptDir & '\information'
    $cFiles = _FileListToArray($dir & '\', "*.xml", 1)
    If IsArray($cFiles) Then
        For $number To $cFiles[0]
            ;need to use StringRegExp here
            ;$stringRExp
            If $cFiles[$number] <> $stringRExp Then
                FileDelete($cFiles[$number]
            EndIf
        Next
    EndIf
EndFunc

 

  • Moderators
Posted

helpus,

This seems to work:

Global $aFiles[] = [3, "info000001", "info999999", "Keep_me"]

For $i = 1 To $aFiles[0]
    If StringRegExp($aFiles[$i], "(?i)^info\d{6}$") Then
        ConsoleWrite("Delete:  " & $aFiles[$i] & @CRLF)
    Else
        ConsoleWrite("Keeping: " & $aFiles[$i] & @CRLF)
    EndIf
Next

It checks if the file name is "info" followed by 6 digits.

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

  Reveal hidden contents

 

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...