Определение типа данных скалярной переменной в Perl

У меня есть функция, которая принимает ввод от пользователя. Вход может быть целым числом, числом с плавающей запятой или строкой. У меня есть три перегруженные функции, которые следует вызывать на основе ТИПА ДАННЫХ введенных данных. Например, если пользователь вводит целое число (скажем, 100), должна быть вызвана функция с целочисленным параметром. Если пользователь вводит строку (скажем, «100»), должна быть вызвана функция, имеющая строковый параметр.

Итак, мне нужно выяснить тип введенных данных. С помощью регулярных выражений я могу различать целое число и число с плавающей запятой (поскольку мне просто нужно узнать тип, я не предпочитаю использовать библиотеку, предоставленную на cpan.org), но я не могу понять, как отличить целое число из строки. Perl рассматривает «100» и «100» как одно и то же? Есть ли способ обойти эту проблему?

6
задан ceving 9 November 2015 в 13:08
поделиться