通过编译以下内容:
System.out.println(Pattern.matches(".?(\\d)$","3"));
它返回true,因为在3
之前没有任何内容,?
检查一个或零。
但是3已经是输入的第一个字符,从0开始到1结束。如何在7之前识别出什么都没有。
例如以下内容。
的System.out.println(Pattern.matches( “你好”) “*”;
它也返回true,但只有最后一个字符与“nothing”匹配。 在字符串的开头不应该有“无”字符,只在它的结尾处?
答案 0 :(得分:2)
答案 1 :(得分:1)
您没有正确解释正则表达式。没有“没什么特征”这样的东西。相反,您的模式显示:任何字符串后跟字符串末尾的数字 OR 字符串末尾的数字。
当然,“3”非常符合第二种描述。
答案 2 :(得分:0)
matches
方法尝试完全匹配输入。
因此无需使用^
,$
..