If you have Teradata 14 you can use Regular Expressions to find your numeric value and then use substring to extract it. The following SQL assumes there is a single numeric value in your string. However, the parameters of the REGEXP_INSTR are flexible enough that with some tweaking you can find the second or third occurrence given that your numeric value is surround by whitespace. This should get you started in the right direction:
SELECT REGEXP_INSTR('abc 56 def', '[x0-9]', 1, 1, 0, 'i') AS Start_
, REGEXP_INSTR('abc 56 def', '[x0-9]', 1, 1, 1, 'i') AS End_
, SUBSTRING('abc 56 def' FROM Start_ FOR (End_ - Start_ + 1));