I'm getting a compilation error when I use this regular expression inside the String class's matches() method. Anyone know what I'm doing wrong here? Thanks

String email = "this@that.com";
System.out.println(email.matches("^(.+@.+\.\\w{2,4})$"));
有帮助吗?

解决方案

escape period . with two backslashes \\. valid escape sequences supported in java are \b \t \n \f \r \" \' \\

System.out.println(email.matches("^(.+@.+\\.\\w{2,4})$"));

OR:

Enclose it within \\Q and \\E

\\Q.\\E
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top