more robust date parsing
This commit is contained in:
		
							parent
							
								
									41fa72cbeb
								
							
						
					
					
						commit
						7f61228ba8
					
				
							
								
								
									
										10
									
								
								Parse.hs
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								Parse.hs
									
									
									
									
									
								
							| @ -5,6 +5,7 @@ where | |||||||
| import Text.ParserCombinators.Parsec | import Text.ParserCombinators.Parsec | ||||||
| import Text.ParserCombinators.Parsec.Language | import Text.ParserCombinators.Parsec.Language | ||||||
| import qualified Text.ParserCombinators.Parsec.Token as P | import qualified Text.ParserCombinators.Parsec.Token as P | ||||||
|  | import Text.Printf | ||||||
| 
 | 
 | ||||||
| import Models | import Models | ||||||
| 
 | 
 | ||||||
| @ -187,7 +188,14 @@ ledgerentry = do | |||||||
|   return $ autofillEntry entry |   return $ autofillEntry entry | ||||||
| 
 | 
 | ||||||
| ledgerdate :: Parser String | ledgerdate :: Parser String | ||||||
| ledgerdate = do date <- many1 (digit <|> char '/'); many1 spacenonewline; return date | ledgerdate = do  | ||||||
|  |   y <- many1 digit | ||||||
|  |   char '/' | ||||||
|  |   m <- many1 digit | ||||||
|  |   char '/' | ||||||
|  |   d <- many1 digit | ||||||
|  |   many1 spacenonewline | ||||||
|  |   return $ printf "%04s/%02s/%02s" y m d | ||||||
| 
 | 
 | ||||||
| ledgerstatus :: Parser Bool | ledgerstatus :: Parser Bool | ||||||
| ledgerstatus = try (do { char '*'; many1 spacenonewline; return True } ) <|> return False | ledgerstatus = try (do { char '*'; many1 spacenonewline; return True } ) <|> return False | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user