Are you are interested in the parsing of the HTTP requests? I think I've recently seen some hand-coded state-based C implementation (I guess it can even be O(n)?) in some fast open-source HTTP server.
The last time I looked at nginx it parsed the HTTP request with a hand-coded state machine but routes that are defined by regular expression matching were handled one expression at a time.
Routes that are not defined by regular expressions used a much faster tree based method.