Somewhat complicated parsing help
I'm currently trying to parse a text document with the following format:
# LES 9
# Regime Age Length RiseTime(GMT) SetTime (GMT) RiseAz SetAz MaxEl MaxAzRate MaxElRate
# GEO2.4 7202007/05/30 16:00:00.0 2007/05/31 04:00:00.0 217.7224.4 41.8-4.62.9
Actual format has the values below their types, with GEO being below "Regime," 2.4 being below "Age," etc. The top value (LES 9) also needs to be stored as a variable. I have absolutely no idea how to parse something like this, as I've only dealt with simple character delimited stuff in the past. Any help would be greatly appreciated.
[616 byte] By [
Ytlayaa] at [2007-11-27 6:30:55]

Read each line into a separate String.
Clip off the # from the beginning with substring.
Store the first line in it's variable.
Use String.split(" ") to parse each token into a separate String.
If the type from the second string are a standard format, then just store the first value in the Regime variable, the second in the Age variable, etc.
If they aren't standard, then store each kay value pair in a Map, ie, Regime is the key, GEO is the value, for each pair.
I just realized that when I pasted it it did not come out as it appears in the text file. In the text file there is a varying (not tab) number of spaces between each value, so split(" ") doesn't work. trim() doesn't seem to work either, and as far as I know there's no equivalent to crunch() in java. Is there any equivalent or other way around this?