在分析了经典的BM算法以及一些重要的改进算法的基础上,根据首字符唯一的特点提出了一种新的模式匹配算法--BMX算法。该算法利用模式串首字符的唯一性,通过判断文本串后一位是否在模式串中出现以及下一位字符和模式串首字符的比较,能使最大位移量提升到 ,出现概率也显著提高。实验结果表明,BMX算法能够最大限度地跳过坏字符,大大减少了匹配次数和字符的比较个数,加快了匹配速度,效率优于BM、BMH、BMHS等算法。