java密码正则
❶ 求一个java密码正则表达式
正则表达式规则:
至少一个大写字母English letter,(?=.*?[A-Z])
至少一个小写英文字母,(?=.*?[a-z])
至少有一位数字,(?=.*?[0-9])
至少有一个特殊字符,(?=.*?[#?!@$%^&*-])
最小八个长度.{8,}(带锚)
你自己组合下就好了。
❷ java密码正则表达式(可以是纯数字,也可以是纯字母,也可以是数字+字母,6-16 位)
正则表达式是一种描述字符串集合的方法,它是以字符串集中各字符串的共有特征为依据的。正则表达式可以用于探索、编辑或者操作文本和数据。它超出了Java程序设计语言的标准语法,因此有必要去学习特定的语法来构建正则表达式。正则表达式的变化是复杂的,一旦你理解了他们是如何被构造的话,你就能解析或者构建任意的正则表达式了。
密码校验规则如下:
1.必须包含数字、字母、特殊字符三种
2.长度至少8位
3.不能包含3位及以上相同字符的重复(hhh123@jixxx)
4.不能包含3位及以上字符组合的重复(123q123c123)
5.不能包含3位以上的正序及逆序连续字符(123#wete#321)
6.不能包含空格、制表符、换页符等空白字符
7.支持特殊字符范围:^$./,;:'!@#%&*|?+(){}[]
按照需求进行正则表达式拆解
规则1&&8:
str.matches("^.*[a-zA-Z]+.*$") && str.matches("^.*[0-9]+.*$")
&& str.matches("^.*[/^/$/.//,;:'!@#%&/*/|/?/+/(/)/[/]/{/}]+.*$")
规则2:
str.matches("^.{8,}$")
规则3:
!str.matches("^.*(.)\\1{2,}+.*$")
规则4:
!str.matches("^.*(.{3})(.*)\\1+.*$")
规则5&&7:
javaImpl:
first change str to char[]
then for Math.abs(cc[0] - cc[1]) == 1 && (cc[0] - cc[1]) == (cc[1] - cc[2])
如果想去掉特殊字符的连续:
first str.split("[^\\w]+") as str1[]
then for str1[]
then for str1[i] javaImpl:
规则6:
!str.matches("^.*[\\s]+.*$")
❸ java中的正则表达式问题 怎么验证密码必须由字母 数字或下划线开头,密码可以随便组合
正则表达式,最简单的写法就是:
\w+
表示匹配
字母
数字
下划线
对于字符个数,至少要1个
java的完整代码,就不给你写了。
因为之前给很多人,花了时间写了完整代码,结果
柏
渡
吗
壁
西
通
啦
机,直接就屏蔽了,导致无法发布内容了。
你自己去写完整代码吧。
❹ java 正则表达式 密码的问题
Stringreg1="(?i)^[a-z\d]{8,}$";
Stringreg2="^.*\d.*\d.*$";
Stringpass="a2bcdw3D";
if(pass.matches(reg1)&&pass.matches(reg2)){
//right
}else{
//wrong
}
❺ java正则表达式密码按要求匹配
^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,15}$
❻ 写一个java正则表达式,判断输入的密码强度,是数字弱,是字母较弱,数字加字母强,用\s写
importjava.util.Scanner;
publicclassJButtonTest
{
publicstaticvoidmain(String[]args)
{
Scannerscanner=newScanner(System.in);
System.out.println("写一个java正则表达式,判断输入的密码强度,是数字弱搜索,是字母较弱,数字加字母强:");
while(scanner.hasNextLine())
{
Stringline=scanner.nextLine();
if(line.matches("^\d+$"))
{
System.out.println("数字弱");
}
elseif(line.matches("^[a-zA-Z]+$"))
{
System.out.println("字母弱");
}
elseif(line.matches("(?i)^((\d+[\da-z]*[a-z]+)|([a-z]+[\da-z]*\d+)|([a-z]+[\da-z]*[a-z]*)|(\d+[\da-z]*\d*))$"))
{
System.out.println("密码强");
}
else
{
System.out.println("你不按套路出牌啊。你滴承诺尼,你滴担架尼?");
scanner.close();
break;
}
}
}
}
❼ java正则表达式的使用
Java 正则表达式和 Perl 的是最为相似的,正则表达式就是规则表达式。
Java中正则表达式与之前使用的Python是有区别的,区别在于Java对于反斜线(\)处理的不同。 在Python中”\d”表示 匹配一位数字(0-9),而Java中匹配一位数字(0-9),需要的正则表达式为”\\d”。 不过换行符和制表符只需要单反斜线“\n\t”。
正则表达式定义了字符串的模式。可以用来搜索、编辑或处理文本。不仅限于某一种语言,但是在每种语言中有细微的差别。
❽ java中的正则表达式
Java正则表达式 (<img.*?)style=\".*?\" 替换成 $1
其中.*表示0个或0以上多个任意字符
.*?表示0个或0以上多个任意字符的非贪婪匹配,就是假如一个句子中有多个style,它匹配距离最近的那个style,同理后面的.*?匹配距离最近的双引号
$1表示反向引用,它代表的是正则表达式中的第一个小括号所括起来的分组的内容,如果有两个小括号括起来的内容,则分别用$1,$2表示它们(在替换后的字符串中)
完整的Java程序如下
123456public class CC { public static void main(String[] args) { String s="<img src=\"file/img/2016/12-28/1234-25521482893088459.jpg\" title=\"1234.jpg\" alt=\"\" width=\"396\" height=\"271\" style=\"width: 396px; height: 271px;\"/>"; System.out.println(s.replaceAll("(<img.*?)style=\".*?\"", "$1")); }}
运行结果
<img src="file/img/2016/12-28/1234-25521482893088459.jpg" title="1234.jpg" alt="" width="396" height="271" />
❾ java 验证密码的正则表达式,要求同时有数字和字母,长度最小6,最大16,无限感激啊!
你好
String reg = "^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,16}$";
这个正则表达式符合你的要求,
希望对你有帮助
❿ java 正则表达式是什么
不同情况下的正则表达式:
匹配首尾空格的正则表达式:(^s*)|(s*$)。
匹配html标签的正则表达式:<(.*)>(.*)</(.*)>|<(.*)/>。
配空行的正则表达式: [s| ]* 。
整数或者小数:^[0-9]+.{0,1}[0-9]{0,2}$。
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^d{n}$"。
只能输入至少n位的数字:"^d{n,}$"。
只能输入m~n位的数字:。"^d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^+?[1-9][0-9]*$"。
只能输入非零的负整数:"^-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^w+$"。
验证用户密码:"^[a-zA-Z]w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&',;=?$"等字符:"[^%&',;=?$x22]+"。
只能输入汉字:"^[u4e00-u9fa5]{0,}$"。
验证Email地址:"^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$"。
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。
匹配中文字符的正则表达式: [u4e00-u9fa5]。
匹配双字节字符(包括汉字在内):[^x00-xff]。
应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)String.prototype.len=function(){returnthis.replace(/[^x00-xff]/g,"aa").length;}。