Not using the code you've got there. Firstly, is the number of tokens always the same? If it is, you can use this (assuming 7 tokens every time):
Code:
$hfind(Table,* * * * %matchtext * *,1,w).data


If not, you'll have to use regular expressions to search like so:
Code:
$hfind(Table, $+(/^(?:\S+\s){4}, $re_escape(%matchtext), (?:\s|$)/), 1, r).data

You'll also need the following alias to use that:
Code:
alias re_escape return $regsubex($1, /([^\w\s])/g, \\t)


I have no idea what the performance of a regular expression search is on a hash table with 3000 items, my guess is "not good". But you'll have to try it and see.


Spelling mistakes, grammatical errors, and stupid comments are intentional.