北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 8905|回复: 12

[Lua]姓名转ID

[复制链接]
发表于 2017-9-6 15:34:44 | 显示全部楼层 |阅读模式
本帖最后由 suineg 于 2017-12-8 10:35 AM 编辑

只支持纯名字转,各位有别的需要也可以在此Lua的基础上自己改自己想要的
1.支持复姓;
2.支持特殊读音;
3.已知WIZ口音修改;

只有一个核心方法:(用带类型的函数定义来看)
string Name.TrancelateName(string strName);

使用方法
1.require "本文件"
2. local strName = Name.TrancelateName("休莱格")
这里的strName就是拼音了,会返回"xiu laige"

如果不想要每次查询的输出,可以在方法里面的

因为直传lua失败,故压缩了一下

北大侠客行MUD,中国最好的MUD

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2017-9-6 16:03:55 | 显示全部楼层
不错,支持分享~
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2017-9-6 18:51:11 | 显示全部楼层
本帖最后由 oolong 于 2017-9-6 07:02 PM 编辑

回复 2# sansouci

感觉会有bug
比如: 单于熊
可能 单于 熊
也可能 单 于熊


if string.find(name, i) then
--这个写法。。。 第三个字 单怎么办。。。
比如string.match(name,"^"..i)
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2017-9-6 19:34:24 | 显示全部楼层
不错,支持。
不对的可以自己再处理一下
比如
if name = "单于熊" then py = "shanyuxiong"
else py=Name.Translate(name)end
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2017-9-6 20:29:05 | 显示全部楼层
3.已知WIZ口音修改;

这句话亮了
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2017-9-6 20:46:28 | 显示全部楼层
回复 4# foolenough
我试过了发现写法效率太低了,我重新写了一下
Name = {};
Name.TrancelateName = function(name)

if Name.DoubleName[string.sub(name,1,4)] then
  return Name.DoubleName[string.sub(name,1,4)].." "..string.gsub(string.sub(name,5,10),'(..)',Name.table)
elseif Name.DoubleName[string.sub(name,1,2)] then
  return Name.DoubleName[string.sub(name,1,2)].." "..string.gsub(string.sub(name,3,10),'(..)',Name.table)

else

  return string.gsub(string.sub(name,1,2),'(..)',Name.table) .." "..string.gsub(string.sub(name,3,10),'(..)',Name.table)
end
return ""
end
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2017-9-6 21:16:03 | 显示全部楼层
回复 3# oolong

单字开始只能是姓,
没有单于这个姓吧,
我姓的表格和名的表格是分开的
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2017-9-6 21:18:02 | 显示全部楼层
回复 6# oolong


写法问题,
我开始是没有复姓表写的一个,
这时候是不是复姓是根据名字长度判断的,
所以会有那种写法,
你这也行,
不过就可以表分开了,
复姓的表和单姓的表分开,
减少查找量
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2017-9-6 21:22:48 | 显示全部楼层
主要代码简洁执行效率高才好。
for多了 白白增加cpu消耗。
能1000行不要写2000行。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2017-9-7 11:02:02 | 显示全部楼层
感谢楼主分享~~~~这样就方便多了。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-4-17 12:36 AM , Processed in 0.010423 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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