我正在用 C# 编写一个程序,它比较字符串的方式类似于 Google 在文档中搜索关键字的方式。
我想要搜索“堆栈溢出”来为“堆栈溢出”(普通)返回 true,“这是堆栈溢出”。(中间),“欢迎来到 Stack Overflow。” (不区分大小写),“我喜欢堆栈溢出。” (可变空格)和“谁在堆栈溢出中添加破折号?”,但不是“堆栈溢出”(没有空格)。
我在想我可以使用像“stack([ -]|. )+overflow”这样的正则表达式,必须用每个新关键字的字符集替换每个关键字中的每个空格似乎有点过头了。因为“堆栈溢出”不是我要搜索的唯一字符串,所以我必须务实地进行。