字符串的模式匹配是计算机中应用非常广泛的一个问题,在浏览器、数据库等查询中,都需要用到模式匹配。
问题描述:给定两个字符串txt[0..n-1]和pat[0..m-1],试查找txt中pat子串所在的所有位置,假设n>m。
例如:
Input: txt[] = "THIS IS A TEST TEXT"
pat[] = "TEST"
Output: Pattern found at index 10
Input: txt[] = "AABAACAADAABAABA"
pat[] = "AABA"
Output: Pattern found at index 0
Pattern found at index 9
Pattern found at index 12
最原始的解决办法是穷举法,即在主串txt中从每个字符开始,依次匹配模式串pat的每个字符串,如果两字符相同,则比较下一个字符,否则从主串的下一个字符开始,与模式串的第一个字符开始进行下一轮匹配。