[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] [已解决]批处理如何查找出多个含指定字符的数字串中的最小值

本帖最后由 pcl_test 于 2016-8-4 13:47 编辑

文本内容为
  1. a535 a22 u133 b135351 w566 d133 a551 d1313 a-12.12 a-0.45 d5252 a122 ...  a12452  a25 a14 d522 d52 a0.12 a-15 ...
复制代码
要求得以a开头的字符串中数字的最小值.字符串的格式是a+数字,数字包括负数、小数。更新:文本大小是1.8M,其中要搜索的a+数字大约有0.5M,在这样的情况下楼下的js代码是可以算出,但要搜索的a+数字很多时,就内存不足。我有两个思路:1先算出搜索到的第一个结果与第二个结果的最小值,再拿它与第三个结果比较得出最小值…这样函数总是比较两个数,就不会内存不足了;2先读取0.5M(或多少字符或多少行)求出最小值,再读取下一0.5M(同上),最后求出最小值
1

评分人数

    • Batcher: 感谢主动给标题标注[已解决]字样PB + 2

问题已经简化,赶快抢沙发吧!

TOP

原来BAT有个小瓶颈,怪不得少人回答。4,5楼的代码我都下了,但经手机一压缩,我都不知道从哪里换行了。先看了5楼的,又来了个JS,像VBS我也是最近几天了解,心想,坏了,还好JS有个分号.嘿嘿,没错,一双击,蹦出个12452,这么大,再看下原来是MAX.4楼的明天再测试吧。我想你一定花了不少时间,明天,明天我用WORD把那些()都换个颜色看看,够菜吧

TOP

5楼的js代码该怎样改成vbs的,或者该怎样用vbs传递一个path变量给js,再调用他,再返回一个结果变量给vbs

TOP

文件较大时,内存不足,问题出在MIN函数。以更新至顶楼

[ 本帖最后由 ohar 于 2009-8-10 11:51 编辑 ]

TOP

看来还是要请zqz0012005

TOP

另外,如果文本中没有要搜索的字符,会出错,那么怎样让他继续执行别的代码呢

TOP

回复 12楼 的帖子

是啊,一直只对两个值进行比较,内存肯定没问题,可我有问题了,我只想到这样的思路,不能写出代码啊

TOP

回复 15楼 的帖子

测试了,10M的,bat得 -.999,js得-4.097,时间上就相差很大,正确最小值是后者。zqz0012005能告知js的计算过程吗

TOP

返回列表