unit grammar IRC::Grammar:ver<2.002001>; token TOP { + } token SPACE { ' '+ } token message { [':' ]? \n } token prefix { [ || ['!' ]? ['@' ]? ] > } token servername { } token nick { [ | | ]* } token user { <-[\ \x0\r\n]>+? | '@']>} token host { <-[\s!@]>+ } token command { + | **3 } token params { * [ ':' | ]? } token middle { <-[:\ \x0\r\n]> <-[\ \x0\r\n]>* } token trailing { <-[\x0\r\n]>* } token letter { <[a..zA..Z]> } token number { <[0..9]> } token special { <[-_\[\]\\`^{}]> }