游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1271|回复: 1

求教一个算法,要用lua写,谢谢

[复制链接]

6

主题

14

帖子

14

积分

新手上路

Rank: 1

积分
14
发表于 2009-4-10 20:05:00 | 显示全部楼层 |阅读模式
function StrToTable(nNum,sTring) --nNum为字符映射表AscII_part的行数,sTring为所要映射的字符串,下面的函数只写了两重循环,所以这个sTring只能为2个字符
        local Str_={}
        for layer1=1,nNum do
                for layer2=1,nNum do
                        if AscII_part[layer1]..AscII_part[layer2]==sTring then
                                Str_[1]=ASCII_part[layer1]
                                Str_[2]=ASCII_part[layer2]
                        end
                end
        end
end

ASCII_part= --只有一部分常用字符 ASCII中32~126,共95个
{" ","!","#","$","%","&","'","(",")","*","+",",","-",".","/","0","1","2","3","4","5","6","7","8","9",":",";","<","=",">","?",'"',"\\","@","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O",&quot","Q","R","S","T","U","V","w","X","Y","Z","[","]","^","_","`","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","{","|","}","~"}

--上面的只是用2个字符长度的字符串参数验证了一下可行性,但字符串长度不定时按照以上方法函数会写的麻烦的要死,所以在这请教一下高手们,如何写一个完善的、漂亮的代码,谢谢(2009-4-10)

0

主题

67

帖子

67

积分

注册会员

Rank: 2

积分
67
发表于 2009-4-10 20:48:00 | 显示全部楼层

Re:求教一个算法,要用lua写,谢谢

你这个东西是要把string转化为int[]之类东西吧,很简单啊

for i = 1,MAX_STRING_LENGTH do
if Str_ ~= nil then
  for k = 1,95 do
     if Str_ = ASCII_part[k] then
        int = k
     end
  end
end
end
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-12-20 15:46

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表