Some time ago I've written a search routine which allows searching inside of Notebooks using string patterns:
Other solutions from that thread can also be of interest for you.
Alternatively you can program your own search routine on the base of one of the following functions:
Import[nbFilePath, "Plaintext"]
NotebookImport[nb, _ ->"InputText"]
First[FrontEndExecute[FrontEnd`ExportPacket[nb, "PlainText"]]]
You can find additional information on their usage in the following threads:
Note however that at least Import[nbFilePath, "Plaintext"]
is based on "NBImport.exe" which has long-standing bug in importing files with non-ASCII filepaths.