正则表达式中的浮点范围内的"[]"是什么意思?

Abi*_*her -1 python regex

我试图理解[0.00-9.00]+python中的这个regex()是做什么的.我理解这一点的方式是它匹配任何一个0 . 0 0-9 . 0 0,所以这里的零是多余的.由于.内部应该匹配任何字符,完整匹配应该是非空字符序列,不一定是数字,但它不会那样.我错过了什么吗?

几个例子表明它的行为方式

Mar*_*ers 6

零确实是多余的.该.只匹配一个文字.,因为它是一个组成部分字符类[...]语法.它没有特别的意义.

所以字符类可以简化为:

[0-9.]+
Run Code Online (Sandbox Code Playgroud)

并仍然匹配完全相同的输入.

该正则表达式文本的作者似乎混淆了-具有数值范围特征的字符类中的特征; 正则表达式中没有这样的东西.您必须匹配聚合中可以作为实数读取的单个字符.以下实际上匹配这些数字:

(?<!\d)\d\.\d\d(?!\d)
Run Code Online (Sandbox Code Playgroud)

负面的后视和前瞻确保此文本周围没有更多数字.\d这是简写[0-9].

请参阅此regex101演示.