line_reader.c (619B)
1 #include "../mpc.h" 2 3 static void* read_line(void* line) { 4 printf("Reading Line: %s", (char*)line); 5 return line; 6 } 7 8 int main(int argc, char **argv) { 9 10 const char *input = 11 "abcHVwufvyuevuy3y436782\n" 12 "\n" 13 "\n" 14 "rehre\n" 15 "rew\n" 16 "-ql.;qa\n" 17 "eg"; 18 19 mpc_parser_t* Line = mpc_many( 20 mpcf_strfold, 21 mpc_apply(mpc_re("[^\\n]*(\\n|$)"), read_line)); 22 23 mpc_result_t r; 24 25 (void)argc; (void)argv; 26 27 mpc_parse("input", input, Line, &r); 28 printf("\nParsed String: %s", (char*)r.output); 29 free(r.output); 30 31 mpc_delete(Line); 32 33 return 0; 34 }