说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

强大的C#随机字符串生成器

HTML文档下载 WORD文档下载 PDF文档下载
使用这个类,你可以生成随机字符串,如密码和标识,主要特点是你可以定制以满足您的需求。

 

作者:brol.sergii

 


下载源代码

 

 

介绍

使用这个类,你可以生成随机字符串,如密码和标识,主要特点是你可以定制以满足您的需求。

 

背景

你可以有以下设置:

 

1. 4种字符集(大写,小写,数字和特殊字符)

2. 设定自己的字符集

3. 每种类型的字符数量最少

4. 模式驱动的字符串生成器

5. 可以生成唯一字符串

6. 每个字符只使用一次

 

使用代码

要开始使用它,你需要创建一个类的实例,并调用"Generate",像这样:

 

Console.WriteLine("Fixed size");RandomStringGenerator RSG = new RandomStringGenerator();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(25));Console.WriteLine("Variable size");RSG = new RandomStringGenerator();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(15,25));Console.WriteLine("Using pattern");RSG = new RandomStringGenerator();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate("LLln*ssssL"));Console.WriteLine("Using only letters and numbers");RSG = new RandomStringGenerator();// Or we can use the constructorRSG.UseSpecialCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(30));Console.WriteLine("Using only special characters and numbers");RSG = new RandomStringGenerator();// Or we can use the constructorRSG.UseUpperCaseCharacters = false;RSG.UseLowerCaseCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(30)); Console.WriteLine("Using your own alphabet");RSG = new RandomStringGenerator(false,true,true,false);// Or we can use the constructorRSG.LowerCaseCharacters = "абвгдежзиклмнопрстуфхчшщюяьъ".ToCharArray();for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(30));Console.WriteLine("Using special limits");RSG = new RandomStringGenerator();RSG.MinLowerCaseCharacters = 2;RSG.MinSpecialCharacters = 20;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(35));Console.WriteLine("Using each character only once");RSG = new RandomStringGenerator();RSG.MinLowerCaseCharacters = 25;RSG.RepeatCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate(25));Console.WriteLine("Using custom alphabet, pattern and unique chars");RSG = new RandomStringGenerator();RSG.LowerCaseCharacters = "абвгдежзиклмнопрстуфхчшщюяьъ".ToCharArray();RSG.RepeatCharacters = false;for (int i = 0; i < 5; i++)    Console.WriteLine(RSG.Generate("lllnlllnlllsssL"));

运行结果

 

Fixed sizedDDH6S%5we=h:9=Ohm2qZ_CPmv{]q.sIY@1|YVc/y<Pu=oY[gni%Ws!(X%YOQ8uc?50uf#r(OC[kTJQ|>m*N1CA_qP>-J=%elHp[GZaAuwdwBR<T/$9-5,pJNDn>rVariable sizeLfUf%kcb{4A#bHOlwHtX8kX>uBUIOcU6>>mTx$:wo)KCs=B;c{Rfz.}MLtDV4*zH6yjQuszcZNkrz_7mblAFP#_=b>el<>CelyS.Using patternJVh8I~.=>BJJa8d,%?]MBXv7?{]%]IGFz5S&!|(UPEu8m~(%(ZUsing only letters and numbersjbIBUPvKNc0sOsnRSVFbK43k7sVnGiV1UdOnJtR3GUPE9lcgG6W0xbo8ibMIy2ecnrzPJcQ74Qcewu7YHdHS5eauwmeBYufP01BMbSddsT7tJ9MevNSnVDE8tU3jcbB7yuHknMWDphazYSNO9QBvXmUsing only special characters and numbers$*&!.<>52]$(89}+}]$]]5<67_03~>~&;>#3!(4|2<1*>>$.#&?#)8+$?>0|@^@*@.</^},>-*!61^&]-~}?}={(5|!:{3;>{}9*3<;3:5{3,+?19}04?@./|586<([11|.~>8*8?8]|)<>%([)0|6Using your own alphabetообкбнълея4тжд8ик3л924р7псу5дя6н2рхьрр4ш65зс35бх8ло4015ед8ажрь4жаоупиет76хлхдпю2кщгд0о8сьггусю28жрж1щиьп7к8гблф7см48лб8дсд8гч5щхчиж4чдщьс1нь9ичгщзабулUsing special limits!I@%){.>f,S-_3k_^*s$~/$_)*>)({)%():$[?-iQ~:~C;{a]{?^X,^g^;G{<!R{>,W]_*?=~F>+*d}_]#9||C[*B[U^j[T%em&/r{_o.:=K5-;1]Hg_!}+&$/9h(k-};g:%Iq#.{>GVXP&o<;U(%:E<}L,ehi;//-:{/F2!&;!+^>@Using each character only oncelvpeiywofrhkajdqtxcsbunzmenfkasgqtlxzuciryjmpdbohvoyfjnxkqtamcvzipwlsedhurbatubmnkehwjvolzpgxfsdicqyswqkdatpgzcjhmiyvblxnufroUsing custom alphabet, pattern and unique charsъхг6тею1ушь]->Gюхч8ьта7щгш)>@Hащо8ефл0ъпз};!Kъут8ещш5иом^$|Kожх5ргн9тсш?~#M
一些其它用途:
1.固定大小的字符串生成
2.可变大小的字符串生成
3.使用模式的字符串生成(L - 大写字母,l - 小写字母,n - 数字,s - 特殊字符和,* - 任何字符(所有字符集)
4.只使用字母和数字的字符串生成
5.只使用特殊字符和数字的字符串生成 
6.使用自定义的字母生成
7.使用最小限制的字符串生成
8.每个字符只使用一次
9.使用多种设置

 

 

360上线第三方漏洞收录平台 将现金奖励爆料者 UC推出iOS平台首个支持WebGL的浏览器 魔兽之父专访:今年游戏产业会出现一场革命 Instagram 5位传奇工程师背后的技术(PPT全译) Google云计算专家Jeff Dean与Sanjay Ghemawat获ACM Infosys基金会大奖 谷歌承诺不对开发、发行和使用开源软件的人专利诉讼 Web框架排行榜 Netty、Servlet和Vert.x位列前三 DARPA慷慨解囊的背后:Python与大数据的火花 研发周报:神奇!1KB JavaScript代码编写的3D蜜蜂 移动周报:65岁传奇Android工程师谈开发 “部落战争”开发商Supercell融资1亿美金 投资公司争先恐后 Kiip 90后华裔励志故事:从遭解雇到誉满全球 大数据基因测序的成本逼近1000美元:个性化医疗的时代来临 携程开放平台发力 将实现旗下产品全流程API支持 Puppet labs发布2013自动化运维报告 “国”字号开发者:航旅纵横负责人薄满辉专访 金山云杨钢:核心算法保证安全和低成本 加速软件交付 企业级模拟测试服务CA LISA受追捧 盛大云业务重点转向自服务 转战中小型企业:Prediction API请求一个月内飙升至7亿多次 利用光子 耶鲁大学研究人员让量子计算机离现实更近一步 技术为王的云计算会让IT部门消亡么? 从Discuz到APP:安米移动社区转化工具 覆盖全领域:Google、Facebook、Twitter等大师的最佳推荐 苹果CEO宣布更改保修政策 并向中国用户道歉 拒绝使用现有Web组件的6个愚蠢理由 Github宣布支持SVN方式访问 iPad,正在改变什么? Go Mobile:行业大牛谈行业应用开发 亚马逊Cloud Drive新增文件同步功能 对抗Dropbox 35万奖金发放,BlackBerry 10大赛奖项揭晓 插入数据到数据库! 高手关注--------送分-----------急急急! 在ASP中如何编程建立索引服务的编录及目录? 在web server application把MEMO字段中带格式(RTF)的内容转换成纯文本? 请问在身份验证中,能否有两个login.aspx??? 急~那篇给vb控件打包文件添加数字签名以便浏览器浏览的那篇文章在哪里? 用vb如何实现模拟雷达界面??欢迎赐教! 如何用CSS控制INPUT的输入外观不是立体的,而看起来是平板的样子,只有一个边线? 用户注册的问题,密码总验证不对,能不能看看错在哪里? 如何使文本框只显示下面的边框? xsl求助~~~ 怎么将int转为CString 有的论坛采用从数据库得到帖子,有的使用shtml,有的使用xml,孰优???还有其他吗? 100分==在JSP中打开word文件的实例 紧急在线等一个很简单的问题 DTPicker 怎样和数据库绑定? 如何动态改变VB报表中Section中的一个与数据环境绑定的rptTextBox的颜色!(100分求教) datediff()这个函数怎么用哪位高手可否给小弟讲解一下急用在线等 和女友分手了,痛苦! 谁有支持中文的带身份验证和邮件群发的ASP.NET邮件组件? 关于多个表通过相同的字段级联的问题,进来看看,一定给分! windowd server 2003许可证问题 谁有支持中文的带身份验证和邮件群发的ASP.NET邮件组件? 求合作伙伴——推广抗非典病毒的消毒剂!!! 在表分区中,按某个varchar2的字段的值和范围如何分呢 我又來了,不僅你們煩,我更煩. 服务器端与客户端的问题 服务器端与客户端的问题 最后的问题,谢谢帮我看看 发现MS WINDOWS版的C标准库一个在BUG!!!!! 在用VFP操作EXCEL时出现无法用字段内容填充单元格问题,请各位帮忙看看. 算法 救命! 有没有rmi的好例程,一用就灵,急 fast report 和 qreport 到底应该用哪一个???(来者有分!!) 关于“数据结构书”的回应——版主莫删 如何进入另一个对话框 在一字符串中怎样取出某一个字符出现的次数. 急! infopower 2000、 3000、4000 Password?? 自定下载的问题,请教高手 如何屏蔽播放.wav文件但找不到相应.wav文件时发出的默认声音? 如何打开另一个对话框 政治因素对我国军事专家的困扰[ZT] if ((btime==null)&&(etime==null )) 请教 一位女同事辭職,一位男同事說跟我有關,鬱悶中... 请问如何在B/S模式下,在页面上实现,如word,excel中的编辑功能? 如何画一个二元函数的图象 急!高分求教:Epson TM U300微型打印机打印作业丢失问题!(100分) word中如何做浮动窗口或按钮等? 大于255个字符的SQL语句如何来写?在线等待 今适有知而斯之的意思? 这些题有那几题是错的,求正确答案, 甲、乙两数的平均数是45,已知甲、乙两数的比是2:4,甲乙两数分别是多少? 一直忧虑科学家预言的小行星撞击地球,怎么都走不出来,怎么办?我一直忧虑科学家预言的小行星撞击地球,怎么都走不出来.有七八年的了,别笑话我,我真的就是怎么都不出.05年的一天在家看电 求第10题的解答过程,有错的请求正确答案急 有一群小孩,他们中任意5个孩子的年龄之和比50少,所有孩子的年龄子和是202.这群孩子至少有多少人?要写出解题步骤!必写,不然不给分! 求问青蛙的什么地方能振动发声《物理》 日勺念什么字 求两个小孩的年龄两个小孩的年龄分别为X,Y,且X的平方加XY等于99,这两个小孩的年龄各是多少? 青蛙靠哪里振动 一辆汽车从甲地开往乙地要10小时,一辆客车从乙地开往甲地要8小时.汽车先开出2小时后,客车再开出小时后与汽车相遇? 有一群小孩,他们中任意5个孩子的年龄之和比50少,所有孩子的年龄之和是202,这群孩子至少有多少?选项里没有22!我也以为是22! 青蛙如何发声?它的叫声洪亮的原因? 甲,乙两地相距126千米,一辆汽车从甲地开往乙地,行驶了九分之七还多5干米,行驶了多少千米? 团结是胜利的根本是什么意思 若函数y=x^2-4px-2的图像过点A(tanα,1)及B(tanβ,1),求sin2(α+β)的值2p/(1+p^2) 青蛙是怎样发声的``青蛙``蜜蜂``蟋蟀``蝉(知了)是怎样发声的`` 已知函数f(x)=sin(2x-π/3)(x∈R),给出如下结论:1、图像关于直线x=5π/12对称;2、图像的一个对称中心是(π/6,0);3、在[0,π/2]上的最大值为(根号3)/2;4、若x1,x2是该函数的两个不同 半径为5的圆O内有一点P,且OP=4则过点P的最短弦长为( ),最长弦长为( ) 观此可以知画理矣 理的意思 求角bdc=90度-1/2角a, 一组对边相等,一组对角相等的四边形____(填能或不能)判定为平行四边形.(求证明过程 ) 非知之难,行之为难;非行之难,终之斯难.不要典故,只要意思! (1)角BDC>角A (2)角BDC=角B+角A+角B 已知:tanα=3/4,tanβ=12/13且都是锐角,求α+β. 历史上最大的小行星撞击地球事件是在什么时候?直径有多大?威力有多大?是在寒武纪还是奥陶纪还是其他时候?注意是最大的小行星 如图,△ABC中,角B和角C的外角平分线交于点B,求证角BDC=90度-2分之1角A 四边形一组对角相等一组对边平行为什么不能判定平行四边形两个三角形AAS啊?为什么不是判定定理?求反例?那为什么不是判定定理啊?不能直接判定? 你怎么看待小行星撞击地球事件? 求帮我写马克思主义的作业最好提前完成. 为什么在判定平行四边形中,不能用对角相等直接判定?是两组对角都平行 怎么倒的(X1-X2)+3/X1-3/X2=(X1-x2)[1+3/X1X2] 马克思主义主要写什么? 已知三角形ABC为等边三角形,O为三角形内一点,AO=根号5,BO=根号3,CO=根号2,求角BOC. 若一元二次方程x^2+3x-1=0的两根分别为x1,x2,则x1+x2=-3,x1x2=-1,x1^2+x2^2=? 在△ABC中,CD⊥AB于D,BE⊥AC于E,CD与BE相交于H,且CH=AB,则AE=CE-BH,请说明理由 在三角形ABC中边AB=2,BC=1角ABC=60点O为AC上一点若BO=二分之根号七试确定O点位置 如某方程的两根都在区间(1,4)内那两根有什么限制条件?还有某方程一个根在(-2,0)内,另一个根在(1,3)内...什么叫内?两根又有什么限制条件? 秦始皇陵墓什么时候发掘?期待! 已知αβ都是锐角 cosα=4/5 tan(α-β)=﹣1/3求sin(α-β) 青蛙呱呱叫是由于它的鸣囊在 秦始皇的墓什么时候能挖掘? 初二历史专题知识归纳整理三方面 经济 思想文化 只要写时间 和事件就好了 如果答案给的好的话 一辆快客上午8:00从甲地开往乙地,到下午2:00正好走了全程的40%,这时汽车离乙(列式计算.)一辆快客上午8:00从甲地开往乙地,到下午2:00正好走了全程的40%,这时汽车离乙地还有252千米.问 秦始皇的陵墓什么时候才能挖掘 半径为5的圆O内有一点P,且OP=3则过点P的最短弦长为( ),最长弦长为( ) 等腰直角三角形,直角边长50cm,另外两角都是45度,求斜边长度 30°,60°,90°角的比是多少?知道一个六十度角的长度该怎么知道九十度和三十度角的长度 为什么说森林是人类的朋友?请联系生活实际谈一谈 一个三角形,已知两角度数,和一条边长,求斜边?一个三角形,已知两角度数30度,60度,和底边长790,求斜边?我想要求斜边的过程,或是公式?? f(x)=|x-1|-|2x+1|画出图像,并求值域过程详细会追加奖励 系统解剖怎么学 姓项的有多少人 一块长方形小麦地,把它的长和宽各增加5厘米后,这块小麦地的面积增加了105平方米.这时它的周长是多少?·打错了 应该是增加5米 条件概率中的P(AB)如何计算? 马克思列宁有什么著作用什么语言写的?我个人觉得他们都是非常有思想见解独到的人,但不想看他们的思想经过技术改造的中译本,因此想学学他们的语言,看看他们真实的面貌.非常感谢二楼 已知f(x)=log2(1-2x),(1)求f(x)的定义域;(2)求使f(x)>0的x的取值范围. 条件概率:P(A∩B|A)≠P(B)对不对.为什么?条件概率的问题.P(A∩B|A)≠P(B) 这题错在哪,正确答案是: 第十题 求详细过程 以色列释放26名巴勒斯坦犯人 亲人兴印尼一处豪华别墅内被发现暗藏多种珍禽研究称英国社会阶层八百年来几乎未发生韩国海域15日沉船事故一失踪中国船员《世界新闻报》窃听案8名被告中有3人日国会议员山本太郎向天皇递交书信 或美媒称奥巴马支持率跌至新低 挫折积累印尼一处豪华别墅内被发现暗藏多种珍禽德国两大党举行第二轮谈判 部长人选仍南非“刀锋战士”谋杀案再添非法持有弹韩国防部:无计划推动签署韩日军事情报美国安局总监否认曾非法窃取谷歌和雅虎朴槿惠11月初将访欧 拟拉动韩欧创造《福布斯》主编:普京因在外交发挥关键福布斯全球权力榜安倍仅排第57 不如日本航空自卫队一空士长因偷窃被予以免为躲避意大利繁冗昂贵程序 180对夫法国两男子晚间持械抢劫 得价值70万日本参议员当面向天皇递书信 官房长官日本政府将向救童中国留学生颁发感谢信东京地铁举行演习训练 防备首都直下型王冠雄谈虎嗅新三板:“女马云”路还长联想9亿控股翼龙贷 :又一个叫王思聪聚划算与保税区发大招 跨境电商烽烟再宛如电影的篮球生涯 PS4《NBA 30岁了,我该把宝贵的时间投资在哪里新广告法即将实施 2020年有望迎来西藏军区特战团实弹演训 铁丝网中挣扎婚后的浪漫需要一份怎样的坚持?西藏军区特战团实弹演训 铁丝网中挣扎【剧透社】《复仇者联盟2》什么梗?中国目前最危险的9大行业平安人寿关于“金赛银”事件的说明:正科诺普里安卡:我不后悔拒绝英超绿豆草莓粥中国人不敢花钱只想着存钱 真相在这里马加特:克洛普是瓜帅完美接班人三星想和微软一起开发HoloLens别以为投资了就能赚钱 你还需做三方面德甲第七轮最佳阵:莱万科曼领衔职场达人分享要领七大招,薪水想不涨都拉卡泽特炮轰主席:很受伤很失望
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘