- | inNumber && isDigit c = NumberSeek True (p:positions) foundNumbers
- | inNumber && not (isDigit c) = NumberSeek False [] ((reverse positions):foundNumbers)
- | not inNumber && isDigit c = NumberSeek True [p] foundNumbers
- | otherwise = NumberSeek False [] foundNumbers
+ | (not $ null positions) && isDigit c = NumberSeek (p:positions) foundNumbers
+ | (not $ null positions) && not (isDigit c) = NumberSeek [] ((reverse positions):foundNumbers)
+ | (null positions) && isDigit c = NumberSeek [p] foundNumbers
+ | otherwise = NumberSeek [] foundNumbers