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

如何做品牌营销策划seo排名培训公司

如何做品牌营销策划,seo排名培训公司,柳州网站建设多少钱,传奇世界网页版游戏需求:想要生成位数不低于16的随机密码,而且要包含大小写字母,数字,特殊字符四类 用别人的在线生成器,生成的密码有个别没有数字或者特殊字符,验证方式就是,生成几个长度是4的密码,看…

需求:想要生成位数不低于16的随机密码,而且要包含大小写字母,数字,特殊字符四类

用别人的在线生成器,生成的密码有个别没有数字或者特殊字符,验证方式就是,生成几个长度是4的密码,看一下生成的密码是否都包含这四类

自己简单写了一个js版和java版的

特点1:保证每个密码都包含四类,实现方式:先随机生成这四类各一个字符,比如aA1*,然后放到随机的位置上去,最后给剩余的位置随机取一个字符。

特点2:设置黑名单字符,有的字体或者软件上显示大写i和小写L分不清,如Il,把这两个排除,1可能也会分不清,也可以修改源码加上黑名单。

特点3:四种类型的字符出现的概率一样

js源码如下:

<html>
<head>
</head>
<body>
<div id="data">
</div>
</body>
<script>
function getRandom(start,end){// 随机数[start,end)return parseInt(Math.random()*(end-start)+start);
}
function getRandomWithout(start,end,without){// 随机数[start,end) TODO var r = parseInt(Math.random()*(end-start)+start);if(without.includes(r)){return getRandomWithout(start,end,without);}return r;
}var special = ['$','%','*','+','-',',','.','[',']'];
var blacklist = ['I','l'];
// a-z:97-122 A-Z:65-90 数字:48-57 特殊符号:
function getLetterLow(blacklist){var v = String.fromCharCode(getRandom(97,123));if(blacklist.includes(v)){return getLetterLow(blacklist);}return v;
}
function getLetterUp(blacklist){var v = String.fromCharCode(getRandom(65,91));if(blacklist.includes(v)){return getLetterUp(blacklist);}return v;
}
function getNumber(blacklist){var v = String.fromCharCode(getRandom(48,58));if(blacklist.includes(v)){return getNumber(blacklist);}return v;
}
function getSpecial(blacklist){var v = special[getRandom(0,special.length)];if(blacklist.includes(v)){return getSpecial(blacklist);}return v;
}var length = 16;
var count = 100;
for(var i=0;i<count;i++){var pwd = new Array(length);var r_index = new Array(4); // 随机的位置var r_index_index = 0;var r_index_data = new Object(); // 随机的位置上的数据// 随机一个小写字母,并到随机位置var r1 = getLetterLow(blacklist);var r1_index = getRandom(0,length);r_index[r_index_index] = r1_index;r_index_index++;r_index_data[r1_index] = r1;// 随机一个大写字母,并到随机位置var r2 = getLetterUp(blacklist);var r2_index = getRandomWithout(0,length,r_index);r_index[r_index_index] = r2_index;r_index_index++;r_index_data[r2_index] = r2;// 随机一个数字,并到随机位置var r3 = getNumber(blacklist);var r3_index = getRandomWithout(0,length,r_index);r_index[r_index_index] = r3_index;r_index_index++;r_index_data[r3_index] = r3;// 随机一个特殊字符,并到随机位置var r4 = getSpecial(blacklist);var r4_index = getRandomWithout(0,length,r_index);r_index[r_index_index] = r4_index;r_index_index++;r_index_data[r4_index] = r4;for(var j=0;j<length;j++){if(r_index.includes(j)){pwd[j] = r_index_data[j];}else{var type = getRandom(1,5);var data = '0';if(type==1){data = getLetterLow(blacklist);}else if(type==2){data = getLetterUp(blacklist);}else if(type==3){data = getNumber(blacklist);}else if(type==4){data = getSpecial(blacklist);}pwd[j] = data;}}var data = document.getElementById("data");var p=document.createElement("span");p.innerHTML=pwd.join('');data.appendChild(p);data.appendChild(document.createElement("br"));
}</script>
</html>

java代码如下:

package com.kingdee.eas.myutil;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;public class RandomPasswordUtil {private static final char[] LetterLow = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' };private static final char[] LetterUP = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };private static final char[] Number = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9' };private static char[] Special = { '!', '#', '$', '%', '*', '+', '-', ',', '.', '?', '[', ']' };private static List<String> BlackList = new ArrayList<String>();public static List<String> getRandomPassword(int count, int length) {BlackList.add("I");BlackList.add("l");List<String> list = new ArrayList<String>();for (int i = 0; i < count; i++) {char[] pwd = new char[length];List<Integer> index = new ArrayList<Integer>();Map<Integer, Character> r_index_data = new HashMap<Integer, Character>();// 随机一个小写字母,并到随机位置char r1 = getLetterLow(BlackList); // 数据int r1_index = getRandom(0, length); // 位置index.add(r1_index);r_index_data.put(r1_index, r1);// 随机一个大写字母,并到随机位置char r2 = getLetterUp(BlackList); // 数据int r2_index = getRandomWithout(0, length, index);// 位置index.add(r2_index);r_index_data.put(r2_index, r2);// 随机一个数字,并到随机位置char r3 = getNumber(BlackList); // 数据int r3_index = getRandomWithout(0, length, index);// 位置index.add(r3_index);r_index_data.put(r3_index, r3);// 随机一个特殊字符,并到随机位置char r4 = getSpecial(BlackList); // 数据int r4_index = getRandomWithout(0, length, index);// 位置index.add(r4_index);r_index_data.put(r4_index, r4);for (int j = 0; j < length; j++) {if (r_index_data.containsKey(j)) {pwd[j] = r_index_data.get(j);} else {int type = getRandom(1, 5);char data = '0';if (type == 1) {data = getLetterLow(BlackList);} else if (type == 2) {data = getLetterUp(BlackList);} else if (type == 3) {data = getNumber(BlackList);} else if (type == 4) {data = getSpecial(BlackList);}pwd[j] = data;}}list.add(String.valueOf(pwd));}return list;}private static char getLetterLow(List<String> blacklist) {char v = LetterLow[getRandom(0, LetterLow.length)];if (blacklist.contains(v)) {return getLetterLow(blacklist);}return v;}private static char getLetterUp(List<String> blacklist) {char v = LetterUP[getRandom(0, LetterUP.length)];if (blacklist.contains(v)) {return getLetterUp(blacklist);}return v;}private static char getNumber(List<String> blacklist) {char v = Number[getRandom(0, Number.length)];if (blacklist.contains(v)) {return getNumber(blacklist);}return v;}private static char getSpecial(List<String> blacklist) {char v = Special[getRandom(0, Special.length)];if (blacklist.contains(v)) {return getSpecial(blacklist);}return v;}private static int getRandom(int start, int end) {return (int) (Math.random() * (end - start) + start);}private static int getRandomWithout(int start, int end, List<Integer> without) {int r = (int) (Math.random() * (end - start) + start);if (without.contains(r)) {return getRandomWithout(start, end, without);}return r;}public static void main(String[] args) {List<String> list = getRandomPassword(100, 4);for (String s : list) {System.out.println(s);}}
}

http://www.ds6.com.cn/news/120609.html

相关文章:

  • 亚马逊跨境电商个人开店要多少钱系统优化的意义
  • 帝国和织梦那个做企业网站好昆明网站开发推广公司
  • 赌博网站做维护犯罪上海网站关键词排名优化报价
  • 软件开发流程及主要岗位seo外链在线提交工具
  • 适合新手做的网站宣城网站seo
  • 新闻头条新闻关于近期重大事件乌鲁木齐seo
  • 淘宝的网站是怎么做的网站制作企业
  • 中国上海门户网站公众号企业文化建设
  • 网站关键词排名检测工具班级优化大师官网登录
  • 万网官网43995000元网站seo推广
  • html企业网站怎么做广州新一期lpr
  • 泰安集团网站建设报价现在有什么推广平台
  • 网站 根目录 虚拟目录地推怎么做最有效
  • 做网站有什么市场风险网络推广怎么做
  • 外贸单在哪些网站做如何用模板做网站
  • 用wordpress做的博客优化公司网站排名
  • 杭州网站推广平台常德网站seo
  • 网站排名权重怎么做百度地址如何设置门店地址
  • 关于做网站的策划方案百度联盟广告收益
  • 手机网站判断跳转代码怎么写百度提交收录入口
  • 响水做网站哪家公司好生意参谋指数在线转换
  • 移动web网站开发实训目的产品推广软文500字
  • 东莞高端网站建设费用旧版优化大师
  • web前端开发框架全面落实疫情防控优化措施
  • 网站建设学校培训班巨量引擎
  • 集团网站建设特色seo收费标准
  • 艺术设计专业seo排名技巧
  • wordpress 为什么评论不能显示南宁seo渠道哪家好
  • 头条网站怎么做的一级造价工程师
  • dwcc2017怎么做网站seo学校培训班