应匹配以下内容:
AAA123
ABCDEFGH123
XXXX123
我能做什么:”。* 123”?
应匹配以下内容:
AAA123
ABCDEFGH123
XXXX123
我能做什么:”。* 123”?
当前回答
是的,你可以。这应该有用。
. =除换行符以外的任何字符 \。=实际的点字符 。?= .{0,1} =匹配除换行符0或1之外的任何字符 .* = .{0,} =匹配除换行符以外的任何字符0次或更多次 .+ = .{1,} =匹配除换行符以外的任何字符一次或多次
其他回答
我喜欢以下几点:
[!- ~]
它匹配所有字符代码,包括特殊字符和正常的A-Z, A-Z, 0-9
https://www.w3schools.com/charsets/ref_html_ascii.asp
例如faker.internet.password(20, false, /[!-~]/)
会生成这样的密码:0+>8*nZ\\*-mB7Ybbx,b>
是的,你可以。这应该有用。
. =除换行符以外的任何字符 \。=实际的点字符 。?= .{0,1} =匹配除换行符0或1之外的任何字符 .* = .{0,} =匹配除换行符以外的任何字符0次或更多次 .+ = .{1,} =匹配除换行符以外的任何字符一次或多次
我所见过的最常见的编码方法是使用字符类,其成员构成所有可能字符集的分区。
通常人们把它写成[\s\ s](空白或非空白),不过[\w\ w]、[\d\ d]等都可以。
我不总是用。is表示任意字符。单线模式时异常。\p{all}应该是
String value = "|°¬<>!\"#$%&/()=?'\\¡¿/*-+_@[]^^{}";
String expression = "[a-zA-Z0-9\\p{all}]{0,50}";
if(value.matches(expression)){
System.out.println("true");
} else {
System.out.println("false");
}
不,*将匹配零个或多个字符。您应该使用+,它可以匹配一个或多个。
这个表达式可能更适合你:[A-Z]+123