Hi,
There are a couple of approaches.
If you use a numeric field, then you could set the display pattern to display the result as you want it: num{999'-'999'-'9999} see Object > Field palette. Maybe adda small bit of supporting text in medium grey, small font telling the user how to input the number.
There are script solutions that you can use for textfields which prevent alphabet characters being inputted. Overall I think a display pattern would work best, as it does not involve script OR annoying dialog windows.
Hope that helps,
Niall