正则表达式是一种字符串模式匹配,使用灵活、功能强大,使用简单的方式对字符串进行控制。 1.使用grep进行字符串匹配 测试文本 1.txt 搜索文件中包含"hello" 利用中括号 [] 来搜寻集合字符 行首与行尾字符 ^ $ 任意一个字符 . 与重复字符 * 限定连续 RE 字符范围 {} ...
分类:
系统相关 时间:
2017-07-25 10:28:14
阅读次数:
197
JavaScript RegExp对象 一。RegExp对象 正则表达式是描述字符模式的对象。 正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具。 1.语法 *pattern(模式) 描述了表达式的模式 *modifiers(修饰符) 用于指定全局匹配,区分大小写的匹配和多 ...
分类:
编程语言 时间:
2017-06-05 22:21:12
阅读次数:
156
一、问题描述: 对于两个字符串S、T,找到T在S中第一次出现的起始位置,若T未在S中出现,则返回-1。 二、输入描述: 两个字符串S、T。 三、输出描述: 字符串T在S中第一次出现的起始位置,若未出现,则返回-1。 四、输入例子: ababaababcbababc 五、输出例子: 5 六、KMP算法 ...
分类:
编程语言 时间:
2017-05-23 23:49:40
阅读次数:
353
Sunday算法是Daniel M.Sunday于1990年提出的字符串模式匹配。其核心思想是:在匹配过程中,模式串发现不匹配时,算法能跳过尽可能多的字符以进行下一步的匹配,从而提高了匹配效率。 核心思想:在匹配过程中,模式串并不被要求一定要按从左向右进行比较还是从右向左进行比较,它在发现不匹配时, ...
分类:
编程语言 时间:
2017-05-15 19:39:33
阅读次数:
221
Sunday是一个线性字符串模式匹配算法。算法的概念如下: Sunday算法是Daniel M.Sunday于1990年提出的一种字符串模式匹配算法。其核心思想是:在匹配过程中,模式串并不被要求一定要按从左向右进行比较还是从右向左进行比较,它在发现不匹配时,算法能跳过尽可能多的字符以进行下一步的匹配 ...
分类:
编程语言 时间:
2017-04-30 10:57:19
阅读次数:
169
一、问题 设有字符串s和pat,长度分别为LengthS和LengthP,在s中查找模式pat。 二、简单方法 顺序考察s的第i(0<=i<=LengthS-LengthP)个位置,判断是否为一个匹配的起点,若成功,为S设置p指针,pat设置q指针,扫描判断是否匹配。 时间复杂度O(LengthS* ...
分类:
其他好文 时间:
2017-03-02 23:32:44
阅读次数:
217
鉴于原理有点复杂,详细原理可以参考这篇文章http://blog.csdn.net/v_july_v/article/details/7041827 本文直接从结论入手,应付考试和竞赛足够了。 设T为目标串("aaabbbaabbabcabcabbaba"),pat为模式串("aabbabc")。 ...
分类:
编程语言 时间:
2017-01-24 07:40:28
阅读次数:
238
/*正则表达式是描述字符模式的对象。 正则表达式用于对字符串模式匹配及检索替换,是对字符串执行模式匹配的强大工具*//*语法 var patt=new RegExp(pattern,modifiers); 或者更简单的方式: var patt=/pattern/modifiers; modifier ...
分类:
编程语言 时间:
2017-01-18 16:18:17
阅读次数:
475
目的: 为了解决字符串模式匹配 历程: 朴素模式匹配:逐次进行比较 KMP算法:利用匹配失败得到的信息,来最大限度的移动模式串,以此来减少比较次数提高性能 概念: m:是目标串长度 n:是模式串长度 j:某次匹配时,第一次出现的不同的索引位置(有的称为:失配位) k:最长首尾串长度(有的称为:最长公 ...
分类:
编程语言 时间:
2016-12-14 13:49:51
阅读次数:
308
KMP算法是字符串模式匹配当中最经典的算法,原来大二学数据结构的有讲,但是当时只是记住了原理,但不知道代码实现,今天终于是完成了KMP的代码实现。原理KMP的原理其实很简单,给定一个字符串和一个模式串,然后找模式串在给定字符串中的位置。将两个字符串转换为字符数组,然后从两个数组的开始位置"i","j ...
分类:
编程语言 时间:
2016-12-12 22:30:28
阅读次数:
217