I thought the thing peff briefly described above sounded pretty good. The worst case complexity, if I'm visualizing it right, would be the length of the string you were comparing.
I remember some discussion of this in previous HN threads but I don't know what it was about...