Java 正则表达式匹配错误

标签 java regex

我正在尝试以下部分无济于事:

 public class test {

    public static void main(String args[] ){

       String password = "s8bgBQYPmUaNjkToXCJLAwAA";
       System.out.println( Pattern.matches("[0-9]", password ));

   }

我希望它能工作,因为我只是在寻找任何数字的匹配项来满足正则表达式的要求,但我的输出总是返回错误。对于我可能遗漏的内容或可能出错的任何帮助,我们将不胜感激。

最佳答案

您正在检查整个字符串是否由一位数字组成。你真正的意思是:

System.out.println( Pattern.matches(".*[0-9].*", password ));

在开头和结尾添加 .* 可以匹配任意数量的其他字符(. 表示“任何字符”,*意思是“任意次数”)。

关于Java 正则表达式匹配错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2211788/

相关文章:

Java > Array-2 > ZeroMax

javascript - 为什么 RegExp split() 和 match() 给出不同的结果?

javascript - 正则表达式 不能同时包含超过 3 个字母

javascript - 如何使用正则表达式获取表达式的子组?

node.js - 为什么在此示例中 Node 的回溯正则表达式比 RE2 更快

java - 为什么 Java Web Start 说已签名的 jar 文件未签名?

java - jdk 源代码 ://HD, 第 2-1 节中的神秘注释

java - 已经使用 springSecurityFilterChain 构建了异常

Java 按值对 HashMap 进行排序

python - 如何修复试图捕捉某些单词和 ID 的正则表达式?