目前,我有一个大的文本文件,其中批处理文件无法处理的行搜索。如果文本文件中的行数不长,下面的代码可以搜索值“9200. 9300”。甚至问题是,这段代码返回9200.行中的值.我只想将值9200范围裁剪到9300。
但是,每当我将它用于大文本文件(500 is )时,它就会产生奇怪的字符。我想我需要VBScript只找到这个号码,我会在一条消息中显示这个数字。
代码是
for /f "usebackq delims=* tokens=5" %i in (`findstr "9201.. 9200.." data.mud`) do @echo %I谢谢。
发布于 2014-01-07 11:36:05
试着做这样的事情:
Set fso = CreateObject("Scripting.FileSystemObject")
Set re = New RegExp
re.Pattern = "\d+"
re.Global = True
filename = "C:\path\to\data.mud"
lb = 9200
ub = 920150
Set f = fso.OpenTextFile(filename)
Do Until f.AtEndOfStream
For Each m In re.Execute(f.ReadLine)
n = CLng(m.Value)
If n >= lb And n <= ub Then WScript.StdOut.WriteLine n
Next
Loop
f.Close您需要使用cscript.exe运行这个脚本
cscript //NoLogo C:\path\to\your.vbshttps://stackoverflow.com/questions/20959392
复制相似问题