Java String.matches不匹配模式

Java String.matches不匹配模式,java,regex,Java,Regex,我想知道字符串的第一个字符是否等于“0”或“否” 但是startzero是错误的 您使用的是String.matches,它将匹配整个字符串 请尝试以下方法: String resultOfSplit="0x^3"; boolean startzero = resultOfSplit.matches("^0"); System.out.println(startzero); 如所述,有一种更简单、更优雅的解决方案,无需使用正则表达式: //

我想知道字符串的第一个字符是否等于“0”或“否”
但是
startzero
是错误的

您使用的是
String.matches
,它将匹配整个
字符串

请尝试以下方法:

String resultOfSplit="0x^3";
boolean startzero = resultOfSplit.matches("^0");
System.out.println(startzero);
如所述,有一种更简单、更优雅的解决方案,无需使用正则表达式:

//                                         | start of input
//                                         || "0" 
//                                         ||| any character, 0 or more instances
boolean startzero = resultOfSplit.matches("^0.*"); 

您正在使用
String.matches
,它将匹配整个
字符串

请尝试以下方法:

String resultOfSplit="0x^3";
boolean startzero = resultOfSplit.matches("^0");
System.out.println(startzero);
如所述,有一种更简单、更优雅的解决方案,无需使用正则表达式:

//                                         | start of input
//                                         || "0" 
//                                         ||| any character, 0 or more instances
boolean startzero = resultOfSplit.matches("^0.*"); 
试试这个:

boolean startzero = resultOfSplit.startsWith("0");
试试这个:

boolean startzero = resultOfSplit.startsWith("0");

为什么不检查
resultOfSplit.startsWith(“0”)是。谢谢你为什么不检查
resultOfSplit.startsWith(“0”)是。那会很好的。thanks@user4149885无问题:)@user4149885无问题:)