I second Andrew Binstock's recommendation of "The Definitive ANTLR Reference" by Terence Parr (author of ANTLR), even to Binstock's sly observation that the book "sort of lulls you into the false belief that you could write a new scripting language fairly easily."
I really like ANTLR. Not long ago, I was asked if it was even remotely feasible to essentially screen-scrape a complex mainframe-generated report. Other people were saying "weeks and even then no guarantees..." With ANTLR and ANTLRWorks, I wrote a parser in a day (albeit one with rules named things like "MysteryBlock1"). (I also pestered the client -- "No, seriously! If you want me to write parsers and hand that AJAX crap off to someone else, I'd be willing to make the sacrifice...")