based on this lesson from the great chandoo (whom you should follow if you want to be excellent in excel:
use this formula (note the array formula, you need to enter it with ENTER + SHIFT + CTRL ) to extract
{=MIN(IFERROR(FIND(lstNumbers,G6),""))}
where lstNumbers is the named range in the sheets with cells containing 0-9 (each number in the cell), and e1 is the cell containing the data.
this will return the first number and then you can extract the first section with:
=LEFT(E1,G1-1)
where e1 contains data and g1 is the previous formula
to get the end of the used numeric section:
{=MAX(IFERROR(FIND(lstNumbers,E1),""))}
then you can use the middle to extract the number section and use len (datacell) - len (from the max function) to extract the right (or middle) rest of the string. where we will use the same call - getting the first number with min, the last with max, etc.
Good luck this is a real harton, doing it with a real programming language would be easier, perhaps
source share