http://developer.51cto.com/art/201007/214543.htm
本文和大家重点讨论一下Flex正则表达式的学习,Flex正则表达式(regularexpression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。
Flex正则表达式学习
一般来说各个开发环境或者语言对于Flex正则表达式的实现不是完全一样的,但是差别都非常细微。AS3按照ECMA262标准实现Flex正则表达式,感觉帮助文档对这部分介绍的不是很好,很多概念都没有讲清楚,这里找到了一个不错的学习资料,如果帮助文档里面有看不懂的可以参考下!
揭开Flex正则表达式的神秘面纱关闭高亮
Flex正则表达式(regularexpression)就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特征。比如表达式“ab+”描述的特征是“一个'a'和任意个'b'”,那么'ab','abb','abbbbbbbbbb'都符合这个特征。
◆Flex正则表达式可以用来:
(1)验证字符串是否符合指定特征,比如验证是否是合法的邮件地址。
(2)用来查找字符串,从一个长的文本中查找符合指定特征的字符串,比查找固定字符串更加灵活方便。
(3)用来替换,比普通的替换更强大。
Flex正则表达式学习起来其实是很简单的,不多的几个较为抽象的概念也很容易理解。之所以很多人感觉Flex正则表达式比较复杂,一方面是因为大多数的文档没有做到由
浅入深地讲解,概念上没有注意先后顺序,给读者的理解带来困难;另一方面,各种引擎自带的文档一般都要介绍它特有的功能,然而这部分特有的功能并不是我们
首先要理解的。
文章中的每一个举例,都可以点击进入到测试页面进行测试。闲话少说,开始。
◆Flex正则表达式规则
普通字符
字母、数字、汉字、下划线、以及后边章节中没有特殊定义的标点符号,都是"普通字符"。表达式中的普通字符,在匹配一个字符串的时候,匹配与之相同的一个字符。
举例1:表达式"c",在匹配字符串"abcde"时,匹配结果是:成功;匹配到的内容是:"c";匹配到的位置是:开始于2,结束于3。(注:下标从0开始还是从1开始,因当前编程语言的不同而可能不同)
举例2:表达式"bc......
分享到:
相关推荐
Flex 正则表达式 搜集了 很久了!
本框值的length取出的是字符个数,并不是字节长度,如果含有中文或者全角字符,一个字符是2个字节,下面与大家分享下具体的判断方法,感兴趣的朋友可以参考下哈
正则表达式转为NFA 请参看 http://blog.csdn.net/lileyear/上的文章 \"blex ----我的flex\
在计算机科学中,正则表达式用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在WEB开发中,正则表达式通常用来检测、查找替换某些符合规则的字符串,如检测用户输入E-mai格式是否正确,采集符合规则的...
利用validate的自带校验和自己去匹配正则表达式验证,很实用。
压缩文本上的正则表达式搜索 它是什么? zarch是一个正则表达式引擎,它接受输入正则表达式和基于语法的压缩文本,并返回包含正则表达式匹配项的未压缩文本的每一行。 限制 跨行不匹配 不支持反转匹配选项 只有常规...
flexicon - 一种用于Python轻量级\基于正则表达式的词法分析器框架
每个组件可以以几种方式中的任何一种进行匹配:从字面上看,作为正则表达式,作为首字母缩写,采用flex样式或作为多个单词前缀。 缺省情况下,启用regexp和initialism匹配。 完成样式是完成的后端,并从提供完成UI...
在某些字符不符合程序设计语言词法规范时要有能力报告相应的错误,本次实验采用词法生成器自动化生成工具 GNU Flex(见附录一),具体要求以正则表达式(正规式)的形式给出词法规则,遵循上述技术线路,Flex 自动...
RE / flex是快速的词法分析器生成器(比Flex快),具有完整的Unicode支持,缩进/缩进/缩进锚,惰性量词和许多其他现代功能。 接受Flex lexer规范语法,并与Bison / Yacc解析器兼容。 生成易于理解的可重用源代码。 ...
GNU Flex 通过 设置正则表达式和匹配规则 自动生成词法分析程序,学编译原理的同学要用到
用于flex里的文本框,下拉选择框,自定义正则表达式验证。
找到您的家庭辅助配置目录(例如~/.homeassistant/ ),然后更改为~/.homeassistant/www (如果需要,请创建) 运行$ wget https://raw.githubusercontent.com/custom-cards/flex-table-card/master/...
sudo apt-get install flex0。sudo apt-get install bison0。sudo apt-get git-core 获取此仓库:0。git clone 编译:0. lex filename.l 0. yacc -d filename.y 0. gcc lex.yy.c y.tab.c -ll或0. ./outlex文件名 ...
先写词法分析的源文件,用正则表达式表示出需要识别的字符,例如数字,乘法,加法和括号,如果识别到其他非法字符需要报错,用flex生成lex.yy.c文件。语法分析用LR方法进行语法分析,LR方法需要先根据文法构造自动机...
Flex编程实现词法分析目的: 了解C--语法 掌握Flex创建词法分析的...学会正则表达式的书写 了解Flex生成的词法分析函数yylex(),并且思考yylex()与语法分析之间的联系 txt中为实验代码,请在装有flex的unix系统下运行
总体任务 根据密码学编程时的某个函数(例如计算最大公约数函数)需要完成的程序功能,运用编译原理课程中的知识,设计一个类C语言程序设计语言...用正则表达式表示的词法规则等价转化为相应的有穷自动机FA,确定化、最
flex版本的Cron表达式UI画面。 基本已经完成了封装。
用lex自动生成工具,来生成词法分析程序,描述规则采用正则表达式的方式!有需要的请自取。
词法分析器采用的工具是自动化生成工具 GNU Flex,该工具要求词法规则以正则表达式(正规式)给出,并根据给定的词法规则生成相应的词法分析程序。 单词是MiniC语言中具有独立意义的最小单位,可分为 5 大类:关键字...