精易论坛

标题: 四十万条文本,用什么代码查找速度快 [打印本页]

作者: 大大张    时间: 2025-7-6 12:09
标题: 四十万条文本,用什么代码查找速度快
四十万条数据,搜索关键词把所有包含关键词的都显示出来,用什么代码
是放进数组,还是超级列表框,如果能给写个列子就更好了,谢谢大家

文本格式
内容1----内容2----内容3


作者: 精易论坛龙    时间: 2025-7-6 12:09
关于大数据查找,我尝试了,最好多线程,每个线程进行查找,这样相当于同时把任务分给多个小学生一起同步查找,查找后的结果在最后汇总合并。这样的速度最快。查找时,最好使用数组,这样比所有字符寻找文本快。如果你没用线程,40万条,单线程要跑很久很久。
作者: 恶魔の佐翼    时间: 2025-7-6 12:26
弄个SQL吧,再弄个超列虚表..............
作者: 四叔    时间: 2025-7-6 12:34
以我的经验, 如果不是非要显示出来被看到的数据, 不要放到界面里. 因为你也不可能去看40W条数据,
所以我建议你用  快速文本对象,  用它的寻找文本, 速度是非常快的,  把找到的结果存在数组里, 最后找完了再一起显示
作者: kedoubobo    时间: 2025-7-6 12:51
我用的 笨方法是。50/10  分成10个文本。 10个文本 同时多线程查找。 嫌慢 继续多分解文本 多线程 查找。 找到就停止。
作者: 笨来无一悟    时间: 2025-7-6 13:25
这种问题当然是用正则
作者: 1109898791    时间: 2025-7-6 13:29
demo.e (3.56 KB, 下载次数: 7)


作者: lufanjingyi    时间: 2025-7-6 13:48
放在数据库里  一个语句就cha询到了
作者: 冰蓝茉莉    时间: 2025-7-6 13:54
关键词是一个还是多个..
作者: 花间一壶酒    时间: 2025-7-6 14:31
放数据库里
作者: 精易论坛龙    时间: 2025-7-6 16:45
花间一壶酒 发表于 2025-7-6 14:31
放数据库里

如果只是单纯查找,他的数据如果不是放在数据库,需要把数据导入数据库再查找,岂不是更慢。最好还是多线程,也就是线程池查找。
作者: 精易论坛龙    时间: 2025-7-6 16:45
冰蓝茉莉 发表于 2025-7-6 13:54
关键词是一个还是多个..

关键词就是多个,也无妨。得看数据结构。
作者: 精易论坛龙    时间: 2025-7-6 16:48
笨来无一悟 发表于 2025-7-6 13:25
这种问题当然是用正则

正则也行,但是面对四十万条,我做过备份,对比源数据和存放盘的文件名,十来万如果单线程跑,速度很慢,要一个个对比,最后用线程池,不用一分钟就匹配完成。得用对方法。正则也好,数组也好,或者寻找文本查找也好,多线程并发速度最快。最后汇总结果。省去很多时间。
作者: 花间一壶酒    时间: 2025-7-6 17:57
精易论坛龙 发表于 2025-7-6 16:45
如果只是单纯查找,他的数据如果不是放在数据库,需要把数据导入数据库再查找,岂不是更慢。最好还是多线 ...

你都几十万条数据了  直接放数据库里不就好了  放进去也就一次的事  如果你靠文本读取  就算是正则提取  速度也比不了数据量啊  何况你还是高频率多线程提取  
作者: b0y    时间: 2025-7-6 18:26
数据库啊  灵活




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4