java-如何测试字符串是否同时包含字母和数字
我需要一个能同时满足这两个条件的正则表达式。
仅当字符串同时包含AZ和0-9时,它才应该为真。
这是我尝试过的:
if PNo[0].matches("^[A-Z0-9]+$")
这是行不通的。
回答:
我怀疑下面的正则表达式会因环顾而变慢,但是无论如何它都可以工作:
.matches("^(?=.*[A-Z])(?=.*[0-9])[A-Z0-9]+$")
正则表达式断言(?=.*[A-Z])
字符串中某处有一个大写字母字符,断言字符串中某处有一个数字(?=.*[0-9])
,然后它检查所有内容是字母字符还是数字。
以上是 java-如何测试字符串是否同时包含字母和数字 的全部内容, 来源链接: utcz.com/qa/427076.html