我有一个文本,其中包含这样的一些潜台词:消耗速率1.43/秒小数可以变化。我想测试一下,所以:
String expected = "depletion rate ^\\d*\\.\\d+|\\d+\\.\\d*$/second"; Assertions.assertThat(text).containsPattern(expected);
但这不管用。我的正则表达式不正确匹配一个正的十进制数吗?
w1e3prcc1#
你的正则表达式模式是关闭的,并且在模式的中间使用了^和$锚。只需使用\d+\.\d+来匹配十进制数:
^
$
\d+\.\d+
String expected = "depletion rate \\d+\\.\\d+/second"; Assertions.assertThat(text).containsPattern(expected);
1条答案
按热度按时间w1e3prcc1#
你的正则表达式模式是关闭的,并且在模式的中间使用了
^
和$
锚。只需使用\d+\.\d+
来匹配十进制数: