废话不多说了,直接给大家贴java代码了,代码有所注释,写的不好,还请各位大家多多关照。

代码如下所示:

package com.alibaba.uyuni.common.util;

import java.util.Random;

public class GeneratePassword {

/**

* 生成随机密码

* @param pwd_len

* 生成的密码的总长度

* @return 密码的字符串

*/

public static String genRandomNum(int pwd_len) {

// 26*2个字母+10个数字

final int maxNum = 62;

int i; // 生成的随机数

int count = 0; // 生成的密码的长度

char[] str = { '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','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','0','1','2','3','4','5','6','7','8','9' };

StringBuffer pwd = new StringBuffer("");

Random r = new Random();

while (count < pwd_len) {

// 生成随机数,取绝对值,防止生成负数,

i = Math.abs(r.nextInt(maxNum)); // 生成的数最大为62-1

if (i >= 0 && i < str.length) {

pwd.append(str[i]);

count++;

}

}

return pwd.toString();

}

public static void main(String[] args) {

System.out.println(genRandomNum(6));//

}

}

package com.alibaba.uyuni.common.util;

import java.util.regex.Matcher;

import java.util.regex.Pattern;

public class RegexUtils {

/**

* 验证Email

* @param email email地址,格式:zhangsan@zuidaima.com,zhangsan@xxx.com.cn,xxx代表邮件服务商

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkEmail(String email) {

String regex = "\\w+@\\w+\\.[a-z]+(\\.[a-z]+)?";

return Pattern.matches(regex,email);

}

/**

* 验证***号码

* @param idCard 居民***号码15位或18位,最后一位可能是数字或字母

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkIdCard(String idCard) {

String regex = "[1-9]\\d{13,16}[a-zA-Z0-9]{1}";

return Pattern.matches(regex,idCard);

}

/**

* 验证手机号码(支持国际格式,+86135xxxx...(中国内地),+00852137xxxx...(中国香港))

* @param mobile 移动、联通、电信运营商的号码段

*

移动的号段:134(0-8)、135、136、137、138、139、147(预计用于TD上网卡)

*、150、151、152、157(TD专用)、158、159、187(未启用)、188(TD专用)

*

联通的号段:130、131、132、155、156(世界风专用)、185(未启用)、186(3g)

*

电信的号段:133、153、180(未启用)、189

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkMobile(String mobile) {

String regex = "(\\+\\d+)?1[3458]\\d{9}$";

return Pattern.matches(regex,mobile);

}

/**

* 验证固定电话号码

* @param phone 电话号码,格式:国家(地区)电话代码 + 区号(城市代码) + 电话号码,如:+8602085588447

*

国家(地区) 代码 :标识电话号码的国家(地区)的标准国家(地区)代码。它包含从 0 到 9 的一位或多位数字,

* 数字之后是空格分隔的国家(地区)代码。

*

区号(城市代码):这可能包含一个或多个从 0 到 9 的数字,地区或城市代码放在圆括号――

* 对不使用地区或城市代码的国家(地区),则省略该组件。

*

电话号码:这包含从 0 到 9 的一个或多个数字

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkPhone(String phone) {

String regex = "(\\+\\d+)?(\\d{3,4}\\-?)?\\d{7,8}$";

return Pattern.matches(regex,phone);

}

/**

* 验证整数(正整数和负整数)

* @param digit 一位或多位0-9之间的整数

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkDigit(String digit) {

String regex = "\\-?[1-9]\\d+";

return Pattern.matches(regex,digit);

}

/**

* 验证整数和浮点数(正负整数和正负浮点数)

* @param decimals 一位或多位0-9之间的浮点数,如:1.23,233.30

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkDecimals(String decimals) {

String regex = "\\-?[1-9]\\d+(\\.\\d+)?";

return Pattern.matches(regex,decimals);

}

/**

* 验证空白字符

* @param blankSpace 空白字符,包括:空格、\t、\n、\r、\f、\x0B

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkBlankSpace(String blankSpace) {

String regex = "\\s+";

return Pattern.matches(regex,blankSpace);

}

/**

* 验证中文

* @param chinese 中文字符

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkChinese(String chinese) {

String regex = "^[\u4E00-\u9FA5]+$";

return Pattern.matches(regex,chinese);

}

/**

* 验证日期(年月日)

* @param birthday 日期,格式:1992-09-03,或1992.09.03

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkBirthday(String birthday) {

String regex = "[1-9]{4}([-./])\\d{1,2}\\1\\d{1,2}";

return Pattern.matches(regex,birthday);

}

/**

* 验证URL地址

* @param url 格式:http://blog.csdn.net:80/xyang81/article/details/7705960? 或 http://www.csdn.net:80

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkURL(String url) {

String regex = "(https?://(w{3}\\.)?)?\\w+\\.\\w+(\\.[a-zA-Z]+)*(:\\d{1,5})?(/\\w*)*(\\??(.+=.*)?(&.+=.*)?)?";

return Pattern.matches(regex,url);

}

/**

*

* 获取网址 URL 的一级域名

* http://www.zuidaima.com/share/1550463379442688.htm ->> zuidaima.com

*

*

* @param url

* @return

*/

public static String getDomain(String url) {

Pattern p = Pattern.compile("(?<=http://|\\.)[^.]*?\\.(com|cn|net|org|biz|info|cc|tv)",Pattern.CASE_INSENSITIVE);

// 获取完整的域名

// Pattern p=Pattern.compile("[^//]*?\\.(com|cn|net|org|biz|info|cc|tv)",Pattern.CASE_INSENSITIVE);

Matcher matcher = p.matcher(url);

matcher.find();

return matcher.group();

}

/**

* 匹配中国邮政编码

* @param postcode 邮政编码

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkPostcode(String postcode) {

String regex = "[1-9]\\d{5}";

return Pattern.matches(regex,postcode);

}

/**

* 匹配IP地址(简单匹配,格式,如:192.168.1.1,127.0.0.1,没有匹配IP段的大小)

* @param ipAddress IPv4标准地址

* @return 验证成功返回true,验证失败返回false

*/

public static boolean checkIpAddress(String ipAddress) {

String regex = "[1-9](\\d{1,2})?\\.(0|([1-9](\\d{1,2})?))\\.(0|([1-9](\\d{1,2})?))";

return Pattern.matches(regex,ipAddress);

}

}

以上所述是小编给大家分享的Java随机密码生成并和邮箱、手机匹配的相关内容,希望对大家有所帮助。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

java生成随机邮箱_Java随机密码生成并和邮箱、手机号匹配相关推荐

  1. java 随机生成手机号_Java随机密码生成并和邮箱、手机号匹配

    废话不多说了,直接给大家贴java代码了,代码有所注释,写的不好,还请各位大家多多关照. 代码如下所示: package com.alibaba.uyuni.common.util; import j ...

  2. java生成随机时间_Java生成某段时间内的随机时间

    上代码: import java.text.SimpleDateFormat; import java.util.Date; public class DateUtil { /** * 生成随机时间 ...

  3. java生成随机数组_JAVA生成随机数组10个数字并求和

    JAVA生成随机数组10个数字并求和 本文最终结果大概是这样的',使用java技术随机生成10个数,然后填充一个数组并在消息框中显示数组内容,接着对数组求和输出,将结果显示在消息框中. 设计思路:可以 ...

  4. java web随机抽取_java实现随机抽取奖品工具类

    本文实例为大家分享了java实现随机抽取奖品工具类的具体代码,供大家参考,具体内容如下 随机抽取奖品 整体思路: 1.奖品集合 + 概率比例集合 2.将奖品按集合中的顺序概率计算成所占比例区间,放入比 ...

  5. java long 随机 正数_java中如何产生随机正负数

    本问题已经有最佳答案,请猛点这里访问. 我正在尝试在基本数据类型short的范围内生成随机整数(-3276832767).Java随机对象只生成正数.我该如何在那个时间间隔内随机创建数字呢?谢谢. 这 ...

  6. python生成随机数组_python3.x 生成3维随机数组实例

    python3.x 生成3维随机数组实例 如下所示: import numpy as np a=np.random.randint(0,10,size=[3,3,3]) print(a) 以上这篇py ...

  7. java获取随机时间_java 随机时间

    展开全部 java生成某个时间段内的随e68a84e8a2ad3231313335323631343130323136353331333337623430机时间(先定义一个时间段,之后随机生成符合条件 ...

  8. python生成随机整数列表_python生成随机整数

    原博文 2019-10-08 11:09 − python生成随机不重复的整数,用random中的sample index = random.sample(range(0,10),10) 上面是生成不 ...

  9. MySQL中如何随机产生验证码,MySQL 生成随机数字 UUID MySQL 生成随机数字、字符串、日期、验证码及 UUID的方法...

    想了解MySQL 生成随机数字.字符串.日期.验证码及 UUID的方法的相关内容吗,不剪发的Tony老师在本文为您仔细讲解MySQL 生成随机数字 UUID的相关知识和一些Code实例,欢迎阅读和指正 ...

  10. java数组随机排序_JAVA 生成随机数数组,并排序输出

    package com.koal.test; import java.util.Arrays; /** * * @author hp * 排序 */ public class Sort { //要生成 ...

最新文章

  1. CPU 空闲时在干嘛?
  2. Cygwin 下载极速源推荐
  3. Vim中根据正则对选中文本对齐(比如ini文件的=号对齐)
  4. php mqtt qos,Mqtt Qos 深度解读
  5. Heron:来自Twitter的新一代流处理引擎应用篇
  6. Javascript 正则表达式对象
  7. matlab三角函数降次,三角函数降次公式及推导过程
  8. 转: c#.net利用RNGCryptoServiceProvider产生任意范围强随机数的办法
  9. I/O Permission Bit Map in Task State Segment(TSS)
  10. Docker工作笔记001---Docker的简介
  11. 《Java程序员职场全功略:从小工到专家》连载三:IT语言平台
  12. 如何监控微信小程序HTTP请求错误
  13. 在线class文件反编译java
  14. 景点旅游信息系统——C/C++程序设计、Qt图形化界面
  15. 安卓火狐浏览器wifi远程调试没有扫描二维码应用的问题
  16. 训练误差和泛化误差、K折交叉验证
  17. 电子行报告:从海外龙头发展历程看国内半导体设备企业投资价值
  18. 约他没去玩 他却更爱好跟男共事一伏
  19. html+css学习第六天(背景图片、精灵图片、元素内容溢出、长度单位)
  20. 国科大计算机体系结构习题整理

热门文章

  1. mac以及windows日语键盘快捷键
  2. 百度站内搜索使用教程
  3. Python爬虫 获取雪球网股票讨论内容( 获取json文件的内容)
  4. mybatis discriminator 鉴定器
  5. android远程控制电视,手机怎么远程控制电视
  6. 锁定计算机后qq能远程吗,如何通过QQ进行远程控制(利用QQ远程协助在不同网络下远程控制电脑)...
  7. 创建一个ROS工作空间(ROS Workspace)过程中遇到的问题
  8. 28个Java开发常用规范技巧总结
  9. C++默认参数(缺省参数)应该写在哪里,声明还是定义里
  10. centos7安装mysql5.7步骤(图解版)