Regex Java-如何检查值之间是否不存在逗号?

问题描述 投票:0回答:1

对于给定的字符串,我想检查是否有任何数字和文字字符之间是否存在逗号分隔符并且仅以此顺序排列。

示例:Mo-Do 10:00-20:00 Fr-Sa 10:00-21:00

如果,之间存在20:00Fr-Sa,则应该为真/否。解析之前,我总是删除空格。

java regex datetime-format
1个回答
0
投票
String withComma = "Mo-Do 10:00-20:00, Fr-Sa 10:00-21:00".replace(" ", "");
String withoutComma = "Mo-Do 10:00-20:00 Fr-Sa 10:00-21:00".replace(" ", "");

Pattern pattern = Pattern.compile(".*\\d,[A-Z].*");

System.out.println(pattern.matcher(withComma).matches()); //true
System.out.println(pattern.matcher(withoutComma).matches()); //false

如果输入字符串包含任意数量的字符后跟(按此顺序),则返回true

  1. 数字\\d
  2. 逗号,
  3. 大写字母[A-Z]
  4. 任意数量的字符.*
© www.soinside.com 2019 - 2024. All rights reserved.