Ich habe eine Funktion, die eine Eingabe vom Benutzer annimmt. Die Eingabe kann ein Integer, ein Float oder ein String sein. Ich habe drei überladene Funktionen, die auf der Grundlage des Datentyps der eingegebenen Daten aufgerufen werden sollen. Wenn der Benutzer zum Beispiel eine ganze Zahl (z.B. 100) eingibt, sollte die Funktion mit dem Parameter integer aufgerufen werden. Wenn der Benutzer eine Zeichenkette eingibt (z. B. "100"), sollte die Funktion mit dem String-Parameter aufgerufen werden.
Ich muss also den Datentyp der eingegebenen Daten herausfinden. Mit regulären Ausdrücken kann ich zwischen einem Integer und einem Float unterscheiden (da ich nur den Typ herausfinden muss, würde ich die Bibliothek von cpan.org nicht vorziehen), aber ich kann nicht herausfinden, wie ich einen Integer von einem String unterscheiden kann. Behandelt Perl "100" und 100 als das gleiche? Gibt es eine Möglichkeit, dieses Problem zu umgehen?