当前位置: 首页 > news >正文

c .net怎么做网站许昌住房和城乡建设局网站

c .net怎么做网站,许昌住房和城乡建设局网站,电子商务网站建设工资,wordpress联系方式代码由于最近笔者在开发数据脱敏相关功能#xff0c;其中一类脱敏需求为能够按照指定的格式随机生成一个字符串来代替原有信息#xff0c;数据看起来格式需要与原数据相同#xff0c;如#xff1a;电话号码#xff0c;身份证号以及邮箱等。在网上搜索了下#xff0c;发现没有…        由于最近笔者在开发数据脱敏相关功能其中一类脱敏需求为能够按照指定的格式随机生成一个字符串来代替原有信息数据看起来格式需要与原数据相同如电话号码身份证号以及邮箱等。在网上搜索了下发现没有特别合适的开源工具于是秉承着没有开源就自己写的宗旨。笔者开发了一个小的开源工具--Kimen(奇门)。这个工具可以按照给定的表达式随机生成字符串简单易用。项目代码不多但用到了些编程技巧如antlr的使用。但更多是对解决这个字符串随机生成问题的设计思考。如果感兴趣的朋友多的话文章下留言笔者将在后续整理出Kimen从构思到开发的过程。好了闲话少叙介绍Kimen(奇门)。 KiMen(奇门)是一款基于表达式随机生成字符串的开源工具。可用于数据脱敏或系统测试时数据的仿真生成还可用作随机密码生成的场景。其表达式借鉴了正则表达式的部分表示方式如 [a-zA-Z]{4}1234[a-zA-Z]{4} 该表达式由三部分组成分别是[a-zA-Z]{4}、1234和[a-zA-Z]{4}。[a-zA-Z]{4}描述了一个可变字符串该字符串长度为4可用字符范围为a到z和A到Z1234描述了一个常量字符串该字符串在进行字符串随机生成时保持不变。以下几个示例为由该表达式随机生成的字符串 oOVj1234sCin ygfj1234Zcdj zpJM1234Zjmp ...... KiMen表达式 Kimen表达式主要由两类任意多个基本的子表达式组成格式如下 (VariantStrExpr|ConstantStrExpr) VariantStrExpr 表示可变字符串。Kimen将根据该表达式随机生成字符串。其格式如下 [charset]{min[,max]} [charset]中描述了进行字符串随机生成时可用的字符。可用字符集两端使用[]包围其字符描述包括以下三种格式 字符如[abcd]abcd四个字符间不需要任何分隔符。 字符区间[0-9]0-9表示从数字0到数字9 字符字典[\a]\a表示一个名字为a的字典Kimen中所有的字符集字典都以一个字符命名。其可用的命名字符的范围没有限制理论上你可以使用除[\||]号外的任何一个字符为字典命名。字符字典主要用于可选字符范围较大在表达式中展开不方便的情况。字符字典可通过Kimen的开发接口进行注册字符串生成器会动态装载字符字典。字符字典可以让Kimen表达式看起来更清爽一些。\字符为转义字符当碰到该字符时表示其后面的字符是字典名。需要额外注意的是当需要在表达式中使用\字符时需要用两个\\字符来表达。 {min,max}中描述了可变字符串的长度min表示随机生成字符串时的最小长度; max表示随机生成字符串时的最大长度max可选。当只有min值时表示按照固定长度生成字符串。 ConstantStrExpr 表示常量字符串。常量字符串用于描述字符串随机生成时信息相对固定的部分。其表达格式如下 str|str 如表达式所示其有两种常量字符串格式 str使用[]号做为常量字符串的包围符其内部可以是除[]号外的任意字符当需要在常量字符串中使用字符时可使用[\]或[] (两个连续单引号)两种格式表达。 str使用[]号做为常量字符串的包围符其内部可以是除[]号外的任意字符当需要在常量字符串中使用[]字符时可使用[\]表达。 KiMen代码示例 随机变长字符串示例 // 随机字符串表达式String expr [a-zA-Z]{4}1234[a-zA-Z]{4,8};KimenBuilder kimenBuilder new KimenBuilder();// 构造字符串生成器StringGenerator stringGenerator kimenBuilder.buildKimen(expr);// 循环输出生成的字符串for (int i 0; i 10; i) {System.out.println(stringGenerator.generate());} 生成结果 SKDZ1234ODPC NUvi1234dkYFvaJ fAQJ1234KXJsbR evZz1234ZUIvaLm uHpi1234UPHlZH AXQB1234KfUCwd PuoR1234BeRBrR NudR1234RSqoZM SYpf1234wxEumY slZK1234RPviU 字符字典示例 // 随机字符串表达式String expr [a-zA-Z]{4}\1234\[\\a\\d]{4};KimenBuilder kimenBuilder new KimenBuilder();// 设置字符字典akimenBuilder.addCharSet(a,bcd);// 设置字符字典dkimenBuilder.addCharSet(d,123);// 构造字符串生成器StringGenerator stringGenerator kimenBuilder.buildKimen(expr);// 循环输出生成的字符串for (int i 0; i 10; i) {System.out.println(stringGenerator.generate());} 生成结果 rVQk1234dc33 HReP1234dcd1 dEyi12342dd2 hmaT1234322b irsl12343dd2 vNDx1234c3dd pfeW1234dbc1 rvlV1234211b vEzz12341cc3 ndWD123412bd Maven坐标 dependencygroupIdorg.datayoo.kimen/groupIdartifactIdkimen/artifactIdversion1.0.0/version /dependency
http://www.w-s-a.com/news/819567/

相关文章:

  • 网站维护具体做啥如何开发wap网站
  • 公司网站设计费计入什么科目潍坊公司网站制作
  • 拖拽式网站开发模具钢东莞网站建设
  • 彩票娱乐网站建设模块化网站开发
  • 孝感网站设计用自己的名字设计头像
  • 高明网站建设哪家好深圳vi设计公司全力设计
  • 工程技术cpu游戏优化加速软件
  • 一起做网店网站入驻收费wordpress 自定义评论样式
  • 深圳高端网站建设公司排名app软件开发sh365
  • 泰州网站整站优化惠州做网站多少钱
  • 做博客网站的php代码一建论坛建工教育网
  • 邢台网站制作费用单页营销网站后台
  • 红色网站建设的比较好的高校用vs2010做购物网站
  • 网站域名备案号查询网页设计实验报告总结模板
  • 什么软件 做短视频网站好大型论坛网站建设
  • 视频网站用什么cms网络运营与维护主要做什么
  • 设计网站主页要多少钱赣州制作网站百度
  • 什么叫高端网站定制网站收录大幅度下降
  • 汝城县网站建设公司aspx网站实例
  • 专业微网站营销diywap手机微网站内容管理系统
  • 盗版做的最好的网站温州logo设计公司
  • 网站建设 中山南充微网站建设
  • 企业网站更新什么内容免费设计软件下载
  • 夏天做哪些网站能致富做网站怎么每天更新内容
  • 个人网站的设计与开发网站建设流程中哪些部分比较重要
  • 招聘网站如何建设中国计算机网络公司排名
  • 工信部网站备案规定厦门在线制作网站
  • 商丘网站公司智联招聘手机app下载
  • 江西专业南昌网站建设中国专业的网站建设
  • 物流企业网站建设方案招标网站有哪些