Hallo Tom,
es ist wirklich ganz einfach, im Endeffekt möchtest du folgendes prüfen: Besteht die Zeichenkette von Anfang (^) bis Ende ($) aus aus einer oder mehreren (+) Ziffern (\d). In einen regulären Ausdruck übersetzt sieht das dann so aus: ^\d+$
Mit perldoc -q "How do I determine whether a scalar is a number/whole/integer/float?" findest du noch ein paar andere Varianten zur Überprüfung von Skalaren auf Zahlen mittels regulärer Ausdrücke.
Von der Variante des Addierens mit 0 möchte ich dir abraten, da das nicht sauber ist und dir entsprechend auch eine Warnung ausgegeben wird, wenn du mit -w arbeitest (Siehe hierzu auch http://de.selfhtml.org/cgiperl/sprache/intro.htm#programmierstil).
Gruß
Norbert