首页 > 解决方案 > 基于 2 个符号作为字母和数字并使用 - 随机生成数字和字母

问题描述

这是一个数字 #这是一个数字还是字母?

分隔随机字符串,如 ??#?#-???##-#?#???-#???#-##

我需要一些代码来生成如上所示的字符串。它不必很复杂。

预期结果示例:2F421-QD421-2W3FY0-3F4L1-37

我试过使用 PHP 和这个例子,但无法实现我想要的生成随机数字和字母

我正在寻找一个 vb.net 项目来处理生成,以便我可以手动将序列提交到数据库中。

标签: vb.net

解决方案


我非常喜欢这种方法:

Dim characters = "0123456789ABCDEFGHIJKLOMNOPQRSTUVWXYZ"
Dim template = "??#?#-???##-#?#???-#???#-##"

Dim rnd = New Random()

Dim query =
    From t In template
    Select If(t = "-", "-", characters(rnd.Next(If(t = "?", characters.Length, 10))))

Dim result = String.Join("", query)

Console.WriteLine(result)

它给了我这样的输出:

RC2C9-DHB47-1Q07RL-8BIF7-57


推荐阅读