这是数字吗?
序幕: 我想培训制作测试用例,所以我将尝试一些简单的方法。 挑战: 接受任何给定的(字符串)输入(在可见的ASCII范围内),并推断出它是否为数字,并输出可用于求值的值。 规则: 一个数字将只包含字符 -0123456789,. 仅要求答案才能识别-1000000000到1000000000(不包括)之间的数字,但是可以识别任意大的数字。 您可以编写完整的程序或函数。 如果是数字,请返回任何可用于识别它的内容,并在说明中记录输出(例如My program outputs T if a number, F if not.)。 输入将是ASCII范围内的任意数量的字符,或者为空(如果为空,则返回不带数字的输出内容)。 数字可以包含小数点(例如3.14)。如果是这样,它们必须在小数点前至少有一位数字,在小数点后至少有一位数字。 数字可以有前导零或尾随零(例如000001.00000)。 为了可读性,可以将数字的整数部分划分为三个数字块,并用逗号(例如1,000.23456)表示。在这种情况下,他们必须从正确的每三位数字被分为左(例如:1,234,567,10,000.202,123,234.00,0,123.293)。 负数由前导-(例如-1.23)表示。领先+以指示正数是不允许的,并且会导致在falsy输出。 异常不算作有效且可辨别的输出(除非它们可以将输出传递到标准输出流(例如,Exception on line N [...]如果将字符串放入标准输出流,则可以作为数字/非数字输出)。 测试用例: (假设My program outputs T if a number, F if not.版本) 123 -> T [on integer] -123 -> T [negative numbers …