有限状态机(Finite-state machine)又称有限状态自动机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。常用与:正则表达式引擎,编译器的词法和语法分析,游戏设计,网络协议,企业应用中等方面。这里给出其一般实现方法和一个应用举例。...
分类:
编程语言 时间:
2014-11-16 13:25:35
阅读次数:
298
正则表达式是什么?正则表达式用于查找和替换字符串中的模式。正则表达式是用某种语法定义的,正则表达式引擎采用这种语法并将它与字符串进行比较。引擎返回字符串是否与语法匹配的指示;也即,该字符串是否包含能够从该语法派生的子串。此外,引擎还能够返回匹配的子串。术语“模式(pattern)”用来表示语法。最基...
分类:
数据库 时间:
2014-11-13 20:45:48
阅读次数:
329
词法分析器(tokenizer)的作用是按照词法定义规则将输入流分解为token序列,同时记录与每个token匹配的串和出现的位置等信息提供给语法分析器。手工编写一个针对某种语言的词法分析器是比较容易的,事实上很多编译器的词法分析器也是手写的,这种方式的优点是直观容易理解,缺点是开发效率低且易出错。编译技术经过几十年的发展已经形成了一套成熟的理论,应用这些理论可以让我们实现词法分析器的自动构造。在Lex中,每个词法规则由正则表达式定义,我们只需要定义每个token的正则表达式,Lex就可以自动生成对应的分析...
分类:
其他好文 时间:
2014-09-22 10:56:12
阅读次数:
701
通过将部分正则表达式用括号括住来实现分组捕获的用法大部分人都很熟悉,如/.+(\d+).+/捕获字符串中的所有数字部分,然后通过组号就可以抽取出各分组匹配的字符文本或者通过反向引用的方式对分组中的文本进行替换。但是除了不同的分组用法以外,正则表达式引擎还提供了一些高级的分组功能,下面介绍部分比较常用...
分类:
其他好文 时间:
2014-09-06 18:34:33
阅读次数:
142
则表达式:在计算机科学中,是指一个用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在很多文本编辑器或其他工具里,正则表达式通常被用来检索和/或替换那些符合某个模式的文本内容。许多程序设计语言都支持利用正则表达式进行字符串操作。例如,在Perl中就内建了一个功能强大的正则表达式引擎。正则表...
分类:
系统相关 时间:
2014-09-04 18:30:29
阅读次数:
421
Note:反斜线在单引号字符串和双引号字符串中都有特殊含义,因此要匹配一个反斜线, 模式中必须写为 ”\\\\”。 译注: “/\\/”, 首先它作为字符串,反斜线会进行转义, 那么转义后的结果是/\/,这个才是正则表达式引擎拿到的模式, 而正则表达式引擎也认为 \ 是转义标记,它会将分隔符 / 进...
分类:
Web程序 时间:
2014-08-24 00:14:51
阅读次数:
228
正则表达式复习1.\,反斜杠,将下一个字符标记为一个特殊字符、或一个原义字符或一个向后引用,或一个八进制转义符。eg:\n换行,\\反斜杠,\((;向后引用:当加了括号后,正则表达式引擎会记录前面括号总匹配的,并存入临时缓存区中;把正则表达式的一部分放在圆括号内可以将他..
分类:
其他好文 时间:
2014-07-28 16:50:04
阅读次数:
195
这一章的内容是有关于正则表达式的匹配原理中一个很重要的内容:回溯。前面的内容基本已经包含了正则表达式的所有常用的内容(针对于NFA引擎)。这一章的目的是想在基础上更深入一点点,写一点关于匹配原理的内容。所以这章的内容会有些稍难。在讲回溯之前,我们先来看看正则表达式的引擎分类。正则表达式引擎 在汽车....
分类:
其他好文 时间:
2014-07-27 10:14:32
阅读次数:
197
1、正则表达式是什么,有什么作用。GlobalsearchREgularexpressionandPrintouttheline.正则表达式:正则表达式引擎正则表达式:是一类字符所书写的模式,其中许多字符不表示其字面意义,而是表达控制或通配等功能,文本搜索工具,根据用户指定的文本模式(搜索条件)对目标文件..
分类:
其他好文 时间:
2014-07-08 10:16:38
阅读次数:
232
元字符元字符,如\b,.,*,还有\d. 正则表达式里还有更多的元字符,比如\s匹配任意的空白
符,包括空格,制表符(Tab),换行符,中文全角空格等。\w匹配字母或数字或下划线或汉字等。对中文/汉字的特殊处理是由.Net提供的正则表达式引擎支持的,其它环境下的具体情况请查看
相关文档。下面来看看更...
分类:
其他好文 时间:
2014-05-21 23:24:16
阅读次数:
425