大家好,我是郭立员,今天讲一下如何生成随机的昵称。
前言
刚刚朋友问我有没有能随机生成昵称的插件
我说:没有!
后来又提到紫猫生成的随机昵称,说是不像正常人能起的昵称。
我的建议是自己封装成随机昵称的函数。
一、随机姓名
平时我们起名字就是姓+名,通常是2个字或者3个字,按照这个逻辑来编写一个姓名库。
TracePrint RndName()
Function RndName()
Dim A = Array(贾, 赵, 萧,梁,胡,谢, 曹,袁,傅,彭,蒋,蔡,魏,薛,阎,潘,戴,夏,姜,姚,邹,熊,_
郝,秦蒋,邵,侯,段,武,赖,龚,奥,夏侯,诸葛,上官,欧阳,尉迟,公孙,岳,墨,琴,涂,_
温,匡,余,余,温,景,庄,庄,燕, 司马,景, 马,伊, 樊,朱, 冯,雷,范,穆,麒, 安,_
布,卜,白,拜,鲍,庹,崔,程,晨,迟,常,车,翟, 窦, 狄,费,范,郭,葛,恭,霍,孔,_
柯,骆,苗,孟,潘, 乔,屠,邰,谭,巫,翁, 徐,肖,萧, 夏,袁,章,童)
Dim B = Array( 雷 ,琳 ,甜,琪,茂, 莆,倩,祥,霞,莠, 唇,汝,瑞,妮,莫,终, 慧,诗,雯,鸿,乔,_
雪,君, 雅,森,沐,淮,莉,淑,申,双, 霆,媛,熙,彩,瀚,幽,桦,逸, 智, 鑫, 鹏,_
顾,玮,益,轩 ,明, 琪, 兴,旺,泉,诚,秋,生,骏, 晶, 然,怡,蓉,淳,宇,玉,志,_
麻,宏, 静 ,萱,楚, 茵, 迪, 卡,辉,苑,博,新,豪,炫, 翰, 豪,睿,渊,昊, 宸, 博,哲)
Dim C = Array(敢, 款, 淦, 筐, 贵, 辜, 凯,植,奠,捷,掎,探,敦,智,棠,淘,淡,焦,婷,_
荔,轸, 迦,钧, 婷,喋,塘,塔,暖,楠,幄,涯,焰,雁,雅,雯,喻,宸,瓿,霞,_
婺,琬,博,棉,涵,淼,淮,番,徨,惠,斑,酣,邯,媚,彬,棠, 磊 ,梅, 晴 ,惠)
Dim 字数 = int(2*rnd()+2)
If 字数 = 3 Then
RndName = A(Int(len(a) * Rnd())) & B(Int(len(b) * Rnd())) & C(Int(len(c) * Rnd()))
Else
RndName = A(Int(len(a) * Rnd())) & B(Int(len(b) * Rnd()))
End If
End Function
代码中有3个数组,第一个数组是姓,第二三个数组是名字,随机2或者3个字。
二、随机生成网名
在百度上找一个网名大全的网站,然后获取页面的html代码,从html里面提取网名。
Import shanhai.lua
Dim n=int(*rnd()+1)
dim html= url.get(https://www.resgain.net/netname_6_&n&.html)
TracePrint html
Dim arr=shanhai.RegexFind(html,data%-clipboard%-text =([^]+))
If len(arr)>0 Then
Dim m=int(len(arr)*rnd())
TracePrint arr(m)
End If
三、复刻QQ的昵称
随机生成一个QQ号,然后通过api获取这个QQ的昵称,如果这个QQ不是空号,就可以得到一个正常的昵称。
TracePrint Getnick()
Function Getnick()
Do
Dim QQ = int*rnd()+)
Dim ret = url.get(https://api.oioweb.cn/api/qq/info?qq=&QQ)
Dim tb = encode.JsonToTable(ret)
If len(tb[result][nickname])>0 Then
Getnick = tb[result][nickname]
Exit Function
End If
Loop
End Function