Skip to content

Rogan308Rylie/Grep-cpp

Repository files navigation

progress-banner

This is a starting point for C++ solutions to the "Build Your Own grep" Challenge.

Regular expressions (Regexes, for short) are patterns used to match character combinations in strings. grep is a CLI tool for searching using Regexes.

In this challenge you'll build your own implementation of grep. Along the way we'll learn about Regex syntax, how parsers/lexers work, and how regular expressions are evaluated.

Note: If you're viewing this repo on GitHub, head over to codecrafters.io to try the challenge.

Passing the first stage

The entry point for your grep implementation is in src/Server.cpp. Study and uncomment the relevant code, and push your changes to pass the first stage:

git commit -am "pass 1st stage" # any msg
git push origin master

Time to move on to the next stage!

Stage 2 & beyond

Note: This section is for stages 2 and beyond.

  1. Ensure you have cmake installed locally
  2. Run ./your_program.sh to run your program, which is implemented in src/Server.cpp.
  3. Commit your changes and run git push origin master to submit your solution to CodeCrafters. Test output will be streamed to your terminal.

About

This C++ grep-like utility features a custom NFA regular expression engine. It supports ERE features like closures (*, +, ?), alternation, character classes ([]), and backreferences. It processes stdin or files, including recursive search (-r), for efficient text pattern matching.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors