On the implementation's side, Russ Cox's articles are pretty indispensable:

https://swtch.com/~rsc/regexp/regexp1.html

https://swtch.com/~rsc/regexp/regexp2.html

And actual implementations based on these articles: https://github.com/google/re2 and https://github.com/rust-lang/regex