OCR for Advent of Code puzzles
Crate to convert Advent of Code from ASCII letters to characters. This is required for several of the puzzle days through the years, including: 2016/09, 2019/08, 2019/11, 2021/13, and 2022/10.
This has been made to help automate parsing of those puzzles for my own AoC solutions, but are shared for others interest.
Installation
Usage
The main function to parse a screen from AoC is the parse_string_to_letters
.
use parse_string_to_letters;
// Input is:
// ####.###....##.###..###..#..#..##..#..#.
// #....#..#....#.#..#.#..#.#.#..#..#.#..#.
// ###..#..#....#.###..#..#.##...#..#.####.
// #....###.....#.#..#.###..#.#..####.#..#.
// #....#....#..#.#..#.#.#..#.#..#..#.#..#.
// ####.#.....##..###..#..#.#..#.#..#.#..#.
let input = "####.###....##.###..###..#..#..##..#..#.\n#....#..#....#.#..#.#..#.#.#..#..#.#..#.\n###..#..#....#.###..#..#.##...#..#.####.\n#....###.....#.#..#.###..#.#..####.#..#.\n#....#....#..#.#..#.#.#..#.#..#..#.#..#.\n####.#.....##..###..#..#.#..#.#..#.#..#.";
assert_eq!;
Two other functions are exposed by this crate:
parse_letter
which tries to convert a single AoC character to aOption<char>
split_screen
which splits a full AoC screen to individual AoC characters.