
var aBatch=[];var idx;var cSpliter=' ';function isWildCard(word){var sRegSlash="([\\\\\\^\\$\\*\\+\\?\\.\\(\\)\\|\\[\\]])";var re=new RegExp();re.compile(sRegSlash,"g");return re.test(word);}
function wildSearch(arr,sRe){var re=new RegExp();re.compile(sRe);for(var j=0;j<arr.length;j++){for(var i=0;i<arr[j].length;i++){if(re.test(arr[j][i]))
aBatch[idx++]=arr[j][i];}}}
function searchSingle(query){aBatch.push(query);}
function searchMulti(query){var aSearch=query.split(cSpliter);for(var i=0;i<aSearch.length;i++){if(aSearch[i])
searchSingle(aSearch[i]);}}
function batchSearch(query,arr,spl){var str;var w;if(spl)
cSpliter=spl;if(query.length<1)return false;var aSearch=query.split(cSpliter);while(query.indexOf('"')>-1){str=query.substring(0,query.indexOf('"'));searchMulti(str);query=query.substring((query.indexOf('"'))+1);if(query.indexOf('"')>-1){str=query.substring(0,query.indexOf('"'));searchSingle(str);query=query.substring((query.indexOf('"'))+1);}}
if(query.length){searchMulti(query);}
if(arr){idx=0;var aTemp=[];for(var i=0;i<aBatch.length;i++){aTemp[i]=aBatch[i];}
aBatch.length=0;for(i=0;i<aTemp.length;i++){wildSearch(arr,aTemp[i]);}}
return true;}