Nejste přihlášen/a.

Přihlásit se do poradny

 

Zápis regulárního výrazu

Od: kami* odpovědí: 1 změna:

už hodinu se trápím, jak napsat regulární výraz názvu pro vyhledávání souboru s těmito podmínkami:

1/ musí to být "pdf" nebo "xls" - s tímto si kdyžtak poradím sám

2/ v názvu musí být přesná fráze "222333" (pozice kdekoliv)

3/ v názvu nesmí nikde být fráze "DIM" (pozice kdekoliv)

4/ výraz by měl "vrátit" celý název souboru

.

potřebuji to do vyhledávací funkce ve VBA, výraz je v proměnné "sName":

Function Recurse(sPath As String, sName As String) As String
Dim FSO As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
Dim myFolder As Object
Dim mySubFolder As Object
Dim myFile As Object
Dim regex As Object
Set regex = CreateObject("VBScript.RegExp")
regex.Pattern = sName
Recurse = "0"
Set myFolder = FSO.GetFolder(sPath)
For Each mySubFolder In myFolder.SubFolders
For Each myFile In mySubFolder.Files
If regex.test(myFile.Name) Then
Recurse = myFile.Path
GoTo Kon
Exit For
End If
Next
If Recurse = "0" Then
Recurse = Recurse(mySubFolder.Path, sName)
End If
Next
Kon:
End Function

 

 

1 odpověď na otázku
Řazeno dle hodnocení

 

 

kami*
hodnocení

Tak po pár hodinách trápení jsem na to došel

^((?!DIM).)*222333((?!DIM).)*[.](xls|xlsx|pdf)$

Díky všem za rady

 

 


 

 

 

Přihlásit se k odběru odpovědí z této otázky:

Neneseme odpovědnost za správnost informací a za škodu vzniklou jejich využitím. Jednotlivé odpovědi vyjadřují názory jejich autorů a nemusí se shodovat s názorem provozovatele poradny Poradte.cz.

Používáním poradny vyjadřujete souhlas s personifikovanou reklamou, která pomáhá financovat tento server, děkujeme.

Copyright © 2004-2025 Poradna Poradte.cz. Všechna práva vyhrazena. Prohlášení o ochraně osobních údajů. | [tmavý motiv]