Hallo Hendor!
Spontan fällt mir da nix ein. Wenn es sich rein nur darum handelt, dann kannst Du TO_NUMBER mit einer Exception drumherum verwenden.
Ansonsten fällt mir nur ein Umgehen mittels TRANSLATE und RTRIM/LTRIM ein: Einfach alle Zeichen aus dem zu überprüfenden String, die deinem Wertebereich entsprechen in ein Zeichen umwandeln, das im gesuchten String sicher nicht vorkommt (ich verwende in solchen Fällen gerne ASCII 7 [BEL]), dieses Zeichen dann noch mittels RTRIM oder LTRIM aus dem Resultat entfernen; wenn Dir jetzt irgendetwas anderes als NULL übrigbleibt, dann gibt es Zeichen im ursprünglichen String, die nicht deinem Wertebereich entsprechen.
Empfehle in diesem Zusammenhang übrigens dringend die Dokumentation von TRANSLATE (genau) zu lesen, ich persönlich erwarte mir immer wieder mal eine andere Reaktion von dem Ding, als dann tatsächlich rauskommt - braucht man ja auch nicht jeden Tag…
Achtung: Performancemässig kann insbesondere die zweite Variant ein ziemlicher Killer sein (ich möchte mir jetzt eigentlich nicht die Zeit nehmen das mit testdaten durchzuspielen, die dann ja doch wieder ganz anders aussehen als deine Echtdaten), ich vermute (!!!) allerdings, dass es immer noch schneller als -zig SUBSTR’s ist.
Beste Grüsse,
TheBeast
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]