You can achieve this in field calculator using python. This may not be the most elegant but it's a start, assuming the simpliest case (ie. your addresses all look the same). I would first create the additional fields needed. Assuming your column with the full address is called "Address".
For HOUSENO in the field calculator write:
##Return just numbers
return re.sub("\D+", "", s)
This can then be called from the calculate box as:
For your street name:
# Return just the alpha characters
def strip_letters (s):
return re.sub ("\d", "", s[1:])
For direction assuming it's the first character each time:
#First character in streetname
return re.sub("\d", "", s)
Here is the python resource for re. This 7.1 Case Study: Street Addresses has helped me numerous times with sorting out my street/address database also using python and re modules.
This should help you out, from here if you're not getting results you want comment and I can alter my code