Конкретный вопрос, конретный ответ... Для 1 файла скрипт даже проще.
Код:
function FindLor(item){
var FileSystem = new ActiveXObject("Scripting.FileSystemObject");
var eqbase=FileSystem.OpenTextFile("base/data.dat",1);
var flag, line, send = "";
var find = 0;
ItemN = new RegExp("^Предмет '.+m([а-я-, ]+).+', Тип предмета:");
var s, ss, sss;
if (item!=""&&item!="."&&item!="..")
{
jmc.ShowMe("");
item=item.toLowerCase();
if (item.indexOf("*гг")!=-1)
{
send = "гг";
item=item.replace(" *гг","");
}
s=item.substring(0,item.indexOf("."));
ss=item.substring(item.indexOf(".")+1);
if (ss!="")
{
sss = ss.substring(ss.indexOf(".")+1);
ss = ss.substring(0,ss.indexOf("."));
}
if (FileSystem.FileExists("base/data.dat"))
{
while (!eqbase.AtEndOfStream)
{
line=eqbase.ReadLine();
if (line.search(ItemN)!=-1)
{
if (RegExp.$1.indexOf(s)!=-1&&RegExp.$1.indexOf(ss)!=-1&&RegExp.$1.indexOf(sss)!=-1) flag=true;
}
if (line.search("^---END---")!=-1&&flag==true)
{
flag=false;
jmc.ShowMe("---");
}
if (flag==true)
{
find = 1;
if (send!="")
{
line=line.replace(/\[\d?\;?\d+m/g,'');
jmc.Send(send+" "+line);
}
else jmc.ShowMe(line);
}
}
}
if (find == 0)
{
jmc.ShowMe("");
jmc.ShowMe("Предмет '"+item+"' не найден!");
jmc.ShowMe("");
}
}
}