【问题标题】:Easy to check if user input is a number in perl? [duplicate]易于检查用户输入是否是 perl 中的数字? [复制]
【发布时间】:2017-10-04 11:21:28
【问题描述】:

问题正如标题所说。假设一个脚本提示用户输入一些内容,并将所述输入存储到一个变量中。检查用户输入/变量是否是 perl 中的数字的最简单方法是什么?

【问题讨论】:

    标签: perl unix


    【解决方案1】:

    来自 Perl 常见问题解答How do I determine whether a scalar is a number/whole/integer/float?

    还有一些常用的任务模块。 Scalar::Util(随 5.8 分发)提供对 perl 内部函数 looks_like_number 的访问,用于确定变量是否看起来像数字。 Data::Types 导出使用上述和其他正则表达式验证数据类型的函数。第三,Regexp::Common 有正则表达式来匹配各种类型的数字。这三个模块可从 CPAN 获得。

    Perl 带有出色的文档。您应该每年至少检查一次从perldoc perltoc 链接的所有内容。

    【讨论】:

    • 另外,查看 Unicode::UCD::num()。如果其字符串参数没有一致的数值,则返回 undef;否则返回表示的数字量。它正在寻找数字字符序列,因此没有小数点、符号和科学记数法。但它可以用来捕捉欺骗,其中使用来自不同脚本的相似数字来提供与实际表示的数字不同的视觉外观
    猜你喜欢
    • 2013-05-31
    • 2020-04-30
    • 2023-03-27
    • 2018-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-20
    相关资源
    最近更新 更多