<分区>
我需要在JAVA中分析一个字符串,看它是否既有字母又有数字。所以这就是我到目前为止所拥有的。 变量 pass 是由用户输入的最多 8 个字符/数字的字符串。
if(pass.matches("[^A-Za-z0-9]"))
{
System.out.println("Valid");
}
else
{
System.out.println("Invalid");
}
<分区>
我需要在JAVA中分析一个字符串,看它是否既有字母又有数字。所以这就是我到目前为止所拥有的。 变量 pass 是由用户输入的最多 8 个字符/数字的字符串。
if(pass.matches("[^A-Za-z0-9]"))
{
System.out.println("Valid");
}
else
{
System.out.println("Invalid");
}
最佳答案
你的问题有点模棱两可。
如果您只想知道字符串是否包含字母或数字(但可能仅 字母或仅 数字)而没有其他内容,那么正则表达式:
pass.matches("^[a-zA-Z0-9]+$");
将返回 true。
如果你想检查它是否包含两者字母和数字,没有别的,那么它更复杂,但类似于:
pass.matches("^[a-zA-Z0-9]*(([a-zA-Z][0-9])|([0-9][a-zA-Z]))[a-zA-Z0-9]*$");
一切顺利
关于java - 如何在java中分析一个字符串以确保它既有字母又有数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16430684/