-- processing File Names for russian and english letters local CName="Typo" local nm = regex.new([[/([^\\]+)$/]]) local rus="[А-ЯЁа-яё]" local rr=rus..rus local eng="[A-Za-z]" local ee=eng..eng local en,ru = regex.new(eng),regex.new(rus) --local hid_ru= regex.new("([аеорсхуАВЕЗКМНОРСТХ])") local c0 = { GetContentFields = function(ColNames) for _,v in ipairs(ColNames) do if v==CName then return true end end end; GetContentData = function(FilePath,ColNames) local data = {} for i,v in ipairs(ColNames) do if v==CName then local res="" local FName = nm:match(FilePath) or "" FName = FName:gsub("%.[^%.]*$","") local _,_,quan_en = en:gsub(FName,"%1") local _,_,quan_ru = ru:gsub(FName,"%1") local E=FName:find(ee) local R=FName:find(rr) if quan_ru==0 and quan_en==0 then res="#" elseif quan_ru==0 and quan_en>0 then res="EN" elseif quan_en==0 and quan_ru>0 then res="RU" elseif quan_ru==quan_en then res="R=E" elseif R and E then res="R+E" elseif quan_ru>quan_en and quan_en>0 then res="e" elseif quan_ru<quan_en and quan_ru>0 then res="r" end data[i]=res end end return next(data) and data end } if not Far then for k,v in pairs(c0) do export[k] = v; end elseif ContentColumns then ContentColumns(c0) end |