有什么法子可以高效在数组中实现模糊查找[已解决]
本帖最后由 heroxianf 于 2021-5-25 22:57 编辑Local $arr = [['name', 'tom'], ['age', 10], ['like', 'toto']]
比如我搜索关键字 'to' 就可以把 tom 和 toto 查询出来. 我原本打算循环正则匹配的, 数组量大了的话有点耗时.
#include <Array.au3>
Local $aArray = [['name', 'tom'], ['age', 10], ['like', 'toto']]
Local $aiResult = _ArrayFindAll($aArray, 'to', 0, 0, 0, 1, 1)
_ArrayDisplay($aiResult) afan 发表于 2021-5-25 22:29
我还是太菜了, 这个函数愣是没看懂. QQQ 大A afan 发表于 2021-5-25 22:29
A大, _ArraySearch() 函数里也有一个执行部分搜索, 那个如何使用呢?
heroxianf 发表于 2021-5-25 22:42
A大, _ArraySearch() 函数里也有一个执行部分搜索, 那个如何使用呢?
_ArraySearch() 只返回一个搜索结果。如果你要返回所有结果应该是需要循环才行的。 #include <Array.au3>
Local $aArray = [['name', 'tom'], ['age', 10], ['like', 'toto']]
Local $iIndex, $iStart = 0
Do
$iIndex = _ArraySearch($aArray, 'to', $iStart, 0, 0, 1, 1, 1)
If @error Then ExitLoop
MsgBox(0, '', $iIndex)
$iStart = $iIndex + 1
Until 0 afan 发表于 2021-5-25 22:52
这下明白了, 还可以这样用. 非常感谢!!!
页:
[1]