Reverse history search is a great feature. When using ZSH is possible to specify a regex pattern instead of a list of words.
To enable this add the following line to your .zshrc.
bindkey '^R' history-incremental-pattern-search-backward
Now Ctrl-R will use regex patterns to search shell history.
If you're using vim mode. The the next two lines maybe useful as well. They enable moving up and down through the history with vim-like bindings.
bindkey "^P" vi-up-line-or-history bindkey "^N" vi-down-line-or-history