python正则表达式匹配特定字符串,python 正则表达式字符匹配

  python正则表达式匹配特定字符串,python 正则表达式字符匹配

  关键字匹配通过python BF算法实现。BF算法,即蓝力算法,是一种常规的模式匹配算法。BF算法的思想是将目标字符串S中的第一个字符与模式字符串T中的第一个字符进行匹配,如果相等,继续将S中的第二个字符与T中的第二个字符进行比较;如果不相等,则比较S的第二个字符和T的第一个字符,依次比较,直到得到最终一致的结果。BF算法是一种蓝力算法。

  代码如下:#!/usr/灵动美人/python

  #-*-编码:utf-8

  #文件名BF

  导入时间

  t=thisisabigapple,thisisabigapple,thisisabigapple,thisisabigapple

  苹果公司

  T=为什么叫向量空间模型?其实每个词都可以看成一个维度。那么,一个词的出现频率就可以看作是它的值(有向),也就是向量。所以每篇文章的字数和频率构成了一个I维空间图,两个文件的相似度就是两个空间图的接近度。假设文章只是二维的,可以在平面直角坐标系中画出空间图。读者可以想象两篇只有两个词的文章来画出和理解。“读者”

  i=0

  计数=0

  开始=时间.时间(

  while(I=len(t )-len(p ) p)):

  j=0

  while(t[I]==p[j]):

  i=i 1

  j=j 1

  IFJ==莱恩(p):

  布莱克

  elif(j==len(p )-1):

  计数=计数1

  否则:

  i=i 1

  j=0

  打印计数

  printtime.time ()-start

  算法思路:逐字比较目标序列T和模式序列P,如果对应位相同,比较下一位;否则,将p向右移动一位,并从p的第一位重新开始比较。

  算法特点:整体移动方向:固定时,认为P从左向右滑动;为了匹配,从P的最左位到右位的一位与T串中的相应位进行比较。的滑动距离为1,所以BF算法的匹配效率较低(相比其他算法如BM、KMP等。幻灯片不跳)。

  算法的时间复杂度为o(Len(t) Len) p),空间复杂度为o (len) t (len) p)。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: