如何检查一个字符串是否包含一个点后跟一个数字和一个点在Java中?

fv2wmkja  于 2023-06-04  发布在  Java
关注(0)|答案(1)|浏览(122)

我正在为以下模式寻找正则表达式匹配。

  • a.0.b应该匹配。
  • a.b.2.c应匹配。
  • 0.b.c不应匹配。
  • a.b.0不应匹配
  • a0.b.c应该不匹配。

即,一个点数dot应该匹配,否则其余的不应该匹配。

igetnqfo

igetnqfo1#

您可以简单地使用正则表达式\.\d\.。(Dot是一个正则表达式元字符,因此需要转义。)
然后,可以使用Matcher#find在字符串中的任何位置搜索匹配项。

var p = Pattern.compile("\\.\\d\\.");
String[] cases = {"a.0.b", "a.b.2.c", "0.b.c", "a.b.0", "a0.b.c"};
for (var s : cases) 
    System.out.println("Found match? " + p.matcher(s).find());

相关问题