$s_Str="CdRomATAPI_DVD_D__DH16D5S____________________VC24____"&@crlf& _
"DiskWDC_WD3200AAJS-22L7A0___________________01.03E01"&@crlf& _
"CdRomNECVMWar_VMware_IDE_CDR10_______________1.00____"&@crlf& _
"DiskVMware_Virtual_IDE_Hard_Drive___________00000001"
;$a_Arr=StringRegExp($s_Str,"(?is)(?:cdrom|disk)(.*?)(?=_{4,})",4)
$o_VBSREGEXP=ObjCreate("vbscript.regexp")
With $o_VBSREGEXP
.global=1
.ignorecase=1
.multiline=1
.pattern="(?:cdrom|disk)(.*?)(?=_{4,})"
$Matches=.execute($s_Str)
EndWith
For $Match In $Matches
ConsoleWrite($Match.submatches(0)&@CRLF)
Next
奇怪,正则测试器里可以显示出结果,但用程序时就是空的,只好用vbs正则啦。 |