Coding-Interviews icon indicating copy to clipboard operation
Coding-Interviews copied to clipboard

表示数值的字符串中 正则表达式代码有误

Open TengQingshanYYDS opened this issue 3 years ago • 0 comments

正则表达式解法解法中:

匹配规则:[+-]?\\d*(\\.\\d+)?([eE][+-]?\\d+)? 有个问题,无法匹配233.这种小数点后没有数字的文本

书上有提到的:

            // 下面一行代码用||的原因
            // 1. 小数可以没有整数部分,如.123等于0.123
            // 2. 小数点后面可以没有数字,如233.等于233.0
            // 3. 当然,小数点前面和后面可以都有数字,如233.666

可以改成[+-]?[\\d]*[\\.]?[\\d]*([eE][+-]?\\d+)?

TengQingshanYYDS avatar Nov 10 '21 15:11 TengQingshanYYDS