1

我在php中有这一行代码,它返回一个文件名数组,如下所示;

1 => folderName/elev-a.jpg
1 => folderName/elev-b.jpg
1 => folderName/elev-c.jpg
1 => folderName/elev-d.jpg

..这是代码

$elev = glob($folderName.'/elev-[a-z].jpg');

我现在需要在 ASP 的程序中使用它。从我目前所读到的,听起来我需要使用字典对象、文件系统对象、正则表达式对象和一些循环。这似乎是我在 VBscript 中遗漏了一些我可能不知道的东西。复制那个功能真的有那么难吗?我迷路了。

4

2 回答 2

1

我没有做过很多服务器端脚本,但我有一些类似于你正在寻找的东西:

Function GetFileNames(Directory, Pattern)
Dim FileNames(), AfterPattern()
Dim FolderObject, fso, f
Dim i
i = 0

Set fso = CreateObject("Scripting.FileSystemObject")
Set FolderObject = fso.GetFolder(Directory)
ReDim FileNames(FolderObject.Files.Count)
ReDim AfterPattern(FolderObject.Files.Count)
For Each f In FolderObject.Files
    FileNames(i) = f.Path
    i = i + 1
Next
'Pattern Portion
Dim RegExp
Set RegExp = CreateObject("VBScript.RegExp")
RegExp.Pattern = Pattern
RegExp.Global = False
Dim x
x = -1
For i = LBound(FileNames()) To UBound(FileNames())
    If RegExp.Test(FileNames(i)) = True Then
        x = x + 1
        AfterPattern(x) = FileNames(i)

    End If
Next
ReDim Preserve AfterPattern(x+1)
GetFileNames = AfterPattern()


Set fso = Nothing
Set FolderObject = Nothing
Set RegExp = Nothing

End Function

第二个参数是您在问题中提到的正则表达式模式。:-)

干杯,LC

于 2013-06-27T01:08:25.643 回答
-2

尝试以下操作:
$elev = glob($folderName.'/elev-'.'*');

于 2016-08-25T08:45:12.867 回答