2016-06-25 JustWe
几种常用算法 我们日常会用正则表达式的时候,我们会发现正则表达式用了非常精简的语法就能概括多种输入串的特征, 继续阅读 »
2016-07-04 JustWe
有穷自动机 为了实现对于正规式(可理解为正则表达式)的识别,我们提出了有穷自动机理论,有穷自动机接受正规式的定义符,并不断的识别符号,移动到新的状态,如果出现了识别错误就会报错。 有穷自动机包含确定的有穷自动机(DFA),和不确定的有穷自动机(NFA)。两者的主要区别在于,在同一个状态时,是否通过同样的符号输入能达到不同的状态。如果能就是不确定的,反之就是确定的。另外:NFA还可以接受空字串已达到不同的状态。 三个主要的算法 这其中有三个主要的算法: 正规式 => NFA Thompson算法 这个算法使用了一些模版去对应正则表达式中的符号,只要记住模版,就能推出相应的NFA。 继续阅读 »
2016-08-17 craneyuan
java.util.Scanner类是一个简单的文本扫描类,它可以解析基本数据类型和字符串。它本质上是使用正则表达式去读取不同的数据类型。 Java.io.BufferedReader类为了能够高效的读取字符序列,从字符输入流和字符缓冲区读取文本。 下面是两个类的不同之处: 当nextLine()被用在nextXXX()之后,用Scanner类有什么问题 尝试去猜测下面代码的输出内容; // Code using Scanner Class import java.util.Scanner; class Differ { public static void main(String args[]) { 继续阅读 »
2016-05-27 JustWe
熟悉一下Lex 和 Yacc的用法 博客地址: http://lfkdsk.github.io 代码地址: https://github.com/lfkdsk/CodeParse tips:阅读此篇需要一定的C语言基础和正则表达式的知识 首先上一篇提到了第一步的工作是要使用 Lex 和 Yacc 进行编写,所以说第一步首先简单的学习一下 Lex & Yacc 的用法,Lex & Yacc 是一套很古老的编译生成套件,大约在上个世纪80年代就有了。但是并不过时,我们今天生成编译程序仍然能够用得上。Lex & Yacc 如果简单的概括来说,Lex 负责词法分析,就是把输入串的纯字符转化为 继续阅读 »
2016-02-05 ruki
新特性 自动检测所有系统libc接口,优先使用系统版本 支持自定义内存分配器,并且能够在debug模式下,获取每次分配的代码位置信息,用于自定义追踪 增加轻量级static_pool来维护整块buffer的内存分配,适合局部管理部分内存,pool虽然也能维护,但是底层基于large_pool,比较重量级,适合全局管理内存 增加stream快速读取全部数据到string的接口 增加adler32 hash算法 增加tb_memmem接口 采用pcre/pcre2/posix regex实现正则表达式库 改进 优化stream,支持对字符设备文件的读写 修改tb_init接口,增加allocator自定义内存分配器参数,实现用户的侵 继续阅读 »
2015-04-22 浩阳
content {:toc} 百度前端学院的第二次任务笔记,JavaScript 基础。主要有JavaScript的定义,数据类型,对象,数组,字符串,正则表达式,DOM,事件,BOM,Ajax 等知识。 任务 掌握JavaScript基础知识,能够使用JavaScript编写一些复杂度不大的交互功能。 继续阅读 »
2017-06-20 Lu Huang
删除a.txt中含abc的行,但不改变a.txt文件本身,操作之后的结果在终端显示 sed -e '/abc/d' a.txt 删除a.txt中含abc的行,将操作之后的结果保存到a.log sed -e '/abc/d' a.txt > a.log * 删除含字符串abc或efg的行,将结果保存到a.log sed '/abc/d;/efg/d' a.txt > a.log 其中,abc也可以用正则表达式来代替。 继续阅读 »