String Matching with Gaps for Musical Melodic Recognition