实现一个小型搜索引擎 麻雀虽小,五脏俱全,跟大型搜索引擎相比,实现一个小型搜索引擎所用到的理论基础是相通的。 四个部分:搜集、分析、索引、查询 搜集 搜索引擎把整个互联网看作数据结构中的有向图,把每个页面看作一个顶点。 如果某个页面中包含另外一个页面的链接,那我们就在两个顶点之间连一条有向边。 可以 ...
分类:
编程语言 时间:
2020-01-17 13:16:51
阅读次数:
106
一、字符串查找:1、在Word、 IntelliJ IDEA、Codeblocks等编辑器中都有字符串查找功能。2、字符串查找算法是一种搜索算法,目的是在一个长的字符串中找出是否包含某个子字符串。 二、字符串匹配:1、一个字符串是一个定义在有限字母表上的字符序列。例如,ATCTAGAGA是字母表 E ...
分类:
编程语言 时间:
2020-01-15 13:51:15
阅读次数:
93
location匹配的是nginx的哪个变量? $request_uri location的匹配种类有哪些? 开头表示精确匹配 开头 ,注意这不是一个正则表达式(是提升优先级的字符串匹配) –它的目的是优先于正则表达式的匹配。如果该location是最佳匹配,则不再进行正则表达式检测。 开头表示区分 ...
分类:
其他好文 时间:
2020-01-15 13:33:13
阅读次数:
58
一、字符串查找:1、在Word、 IntelliJ IDEA、Codeblocks等编辑器中都有字符串查找功能。2、字符串查找算法是一种搜索算法,目的是在一个长的字符串中找出是否包含某个子字符串。 二、字符串匹配:1、一个字符串是一个定义在有限字母表上的字符序列。例如,ATCTAGAGA是字母表 E ...
分类:
编程语言 时间:
2020-01-14 23:55:58
阅读次数:
152
字符串匹配: sed -i 's/root/ROOT/' passwd 将文件passwd中,每一行中,匹配的第1个符合条件的字符串替换掉,剩下的不匹配 sed -i 's/root/ROOT/2' passwd 将文件passwd中,每一行中,匹配到的第2个符合条件的字符串替换掉,剩下的不匹配 s ...
分类:
系统相关 时间:
2020-01-14 09:55:39
阅读次数:
95
hive正则 正则表达式描述了一种字符串匹配的模式,可以用来检查一个字符串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。 正则表达式是由普通字符以及特殊字符组成的文字模式。 普通字符:包括所有大写和小写字母、所有数字、所有标点符号和一些其他符号 ^ 匹配输入字符串的开始位 ...
分类:
其他好文 时间:
2020-01-12 15:24:44
阅读次数:
129
AC自动机 一样的不太好理解,有时间再啃 敏感词过滤 单模式字符串匹配算法:(BF,RK,BM,KMP)每次取敏感词字典中一个敏感语做为模式串在用户输入的主串中进行匹配,效率较低 多模式字符串匹配算法:(Trie树,AC自动机) Trie树:把用户输入的内容作为主串,从第一个字符(假设是字符 C)开 ...
分类:
编程语言 时间:
2020-01-11 20:22:45
阅读次数:
105
KMP算法 比较难理解,准备有时间专门啃一下。 核心思想与BM算法一样:假设主串是 a,模式串是 b。在模式串与主串匹配的过程中,当遇到不可匹配的字符的时候,我们希望找到一些规律,可以将模式串往后多滑动几位,跳过那些肯定不会匹配的情况。 不同的是:在模式串和主串匹配的过程中,把不能匹配的那个字符仍然 ...
分类:
编程语言 时间:
2020-01-11 18:38:28
阅读次数:
94
第三课正则中匹配多个字符串#匹配多个字符串#择一匹配符号,importres=‘Python|Ruby|Java|Swift‘m=re.match(s,‘PythonRuby‘)print(m)#<re.Matchobject;span=(0,6),match=‘Python‘>m=re.search(s,‘IlovePython.‘)print(m)#<re.Matchobje
分类:
其他好文 时间:
2020-01-11 10:09:37
阅读次数:
107
简单了解一下正则表达式,用到了在查询即可。 正则表达式(Regular Expression)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为"元字符");描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出 ...
分类:
其他好文 时间:
2020-01-08 18:41:47
阅读次数:
60