我正在尝试编写一个匹配模式的程序,该模式由下划线和字母组成,带有单词。一封信符合自己;下划线匹配任何字符。例如,模式_a_
,_at
或c_t_
将匹配vacate
和amplification
,因为它嵌入其中。我通过迭代每个单词和模式的每个字母并比较它们,当模式是前缀,后缀或与单词大小相同时实现了这一点。但是,当模式嵌入到单词中的任何位置时,我不知道如何实现它。任何想法(我使用c ++ 98)?
提前谢谢。
答案 0 :(得分:0)
您可以通过将类似的函数写入strcmp()来匹配两个相等长度的单词,该函数接受下划线始终匹配。然后你可以通过在haystack + 0,haystack +1,haystack +2等上调用int来扩展它以搜索“haystack”中的任何地方,直到你到达干草堆中数据较少的点为止。