gpt4 book ai didi

java - 正则表达式模式与我无法遵循的模式之一相匹配?

转载 作者:行者123 更新时间:2023-11-29 03:07:44 26 4
gpt4 key购买 nike

我刚遇到一个正则表达式模式及其匹配模式字符串,但我对其中一个匹配模式感到困惑

Target: .50 1.50 0.50 10.50 00.50 1.555

Pattern: (0|[1-9]\d*)\.\d\d

Matches with: (4,7:1.50)(9,12:0.50)(14,18:10.50)(21,24:0.50)(26,29:1.55)

我从模式中推断出的是小数点后的两位数字,以及小数点前的一组,其中第一位数字是 0 或 1 到 9 之间的任何数字,后跟空字符串或任何数字字符串...

I think in last second match it should be 00.50.

我错过了什么??

最佳答案

只需将您的正则表达式模式更改为

(00?|[1-9]\d*)\.\d\d

如果你想在小数点前允许一个或两个零。您当前的正则表达式仅捕获其中一部分的原因是因为 | 表示要么在 . 之前捕获一个零,要么捕获不以 a 开头的任何长度的数字零(因为类 [1-9] 排除了它)。

关于java - 正则表达式模式与我无法遵循的模式之一相匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31232898/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com