朴素字符串匹配算法英文叫Brute force,大致意思是暴力求解。该算法通过一个循环找到所有的有效偏移s,该循环对n-m+1个可能的s值进行检测,看是否满足条件P[1..m] = T[s+1..s+m]。其中T为待匹配的文本,P为要匹配的模式,如下图所示(摘自算法导论):
伪代码如下:
NAIVE-STRING-MATCHER(T, P)
1 n = T.length
2 m = P.length
3 for s = 0 to n-m
4 if P[1..m] == T[s+1..s+m]
5 print "Pattern occurs with shifts"