`

揭开Flex正则表达式的神秘面纱

    博客分类:
  • FLEX
 
阅读更多

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 正则表达式大集

    ### Flex正则表达式大集解析 #### 一、数字匹配 **正则表达式**: ```regex ^\d+$ //匹配整数 ``` **解释**:此表达式用于匹配任何非空的整数(正数或负数)。`^`表示字符串的开始,`\d`代表任何数字字符(等同于`...

    Flex正则表达式判断中文或全角字符代码

    ### Flex正则表达式判断中文或全角字符代码 在Flex开发中,处理文本时经常需要考虑到字符编码的问题,特别是当涉及到中文或者其他全角字符时。由于这些字符通常占用两个字节,因此简单的通过字符串的`length`属性来...

    正则表达式转为NFA

    在实际应用中,可以使用类似lex或flex这样的工具进行正则表达式到NFA的转换。在给定的链接"http://blog.csdn.net/lileyear/article/details/7860596"中,作者lileyear讨论了他的自定义工具"blex",它可能是对flex...

    正则表达式+词法分析

    而词法分析生成器,如lex(或flex)和yacc(或bison)等工具,可以自动生成词法分析器代码,只需要提供正则表达式和相应的动作规则即可。 在实际应用中,正则表达式和词法分析经常结合使用,例如在文本处理工具(如...

    validate校验正则表达式验证

    这些文件可能是Flex应用程序的源代码,其中可能包含了使用validate库进行正则表达式验证的具体实现。通过查看这些文件,我们可以深入理解如何在实际项目中集成和应用正则表达式验证。 总结来说,"validate校验正则...

    使用正则表达式匹配字符串数据PPT学习教案.pptx

    10. **在Flex 4.0中使用正则表达式**:在Flex中,可以使用`RegExp`类来创建和使用正则表达式。创建正则表达式的方式有两种:直接使用斜杠 `/` 包裹表达式,或者用字符串表示。匹配数据的方法包括`exec()`和`test()`...

    Actionscript3正则表达式的使用.pdf

    在AS3中,正则表达式(Regular Expression)是一种强大的文本处理工具,它允许开发者通过模式匹配来验证、查找、替换和提取文本。正则表达式由四个主要组成部分构成:元字符、元序列、标志和数量表达符。 1. **元...

    PHP和javascript常用正则表达式及用法实例

    在计算机科学中,正则表达式用来描述或者匹配一系列符合某个句法规则的字符串的单个字符串。在WEB开发中,正则表达式通常用来检测、查找替换某些符合规则的字符串,如检测用户输入E-mai格式是否正确,采集符合规则的...

    js 正则表达式

    同时,访问RIA藏经阁提供的资源,你将有机会了解JavaScript及相关的RIA技术,如Flash、Flex、Air和HTML5,这些都对深入理解JavaScript正则表达式大有裨益。 总之,JavaScript的正则表达式是开发者必备的技能之一,...

    Python-flexicon一种用于Python轻量级基于正则表达式的词法分析器框架

    Python中的flexicon是一种轻量级、基于正则表达式的词法分析器框架,它为开发者提供了构建自己的词法分析器的工具。词法分析器,也称为扫描器或词法分析器,是编译器设计过程中的第一步,它将源代码分解成一系列有...

    正则表达式匹配解析过程探讨分析(正则表达式匹配原理)

    正则表达式是一种强大的文本匹配工具,它通过一系列特殊字符的组合来构建表达式,用以描述和匹配特定的字符串模式。正则表达式的强大之处在于它几乎可以匹配任何形式的文本,从简单的字母数字组合到复杂的字符串结构...

    zearch:Zearch 是一个正则表达式引擎,它接受输入正则表达式和基于语法的压缩文本,并返回包含正则表达式匹配项的未压缩文本的每一行

    压缩文本上的正则表达式搜索 它是什么? zarch是一个正则表达式引擎,它接受输入正则表达式和基于语法的压缩文本,并返回包含正则表达式匹配项的未压缩文本的每一行。 限制 跨行不匹配 不支持反转匹配选项 只有常规...

    正则表达式PPT学习教案.pptx

    【正则表达式】是计算机科学中用于匹配字符串或数据模式的一种强大工具,它在词法分析中扮演着至关重要的角色。词法分析是编译器设计中的一个关键步骤,其目的是将源代码分解成一系列有意义的单元,称为单词符号...

    正则表达式PPT课件.pptx

    正则表达式是编程语言中用于模式匹配和文本解析的重要工具,它在词法分析阶段起着关键作用。词法分析是编译器设计过程中的第一步,它的主要任务是将源代码分解成一系列有意义的单元,称为单词符号或token。 3.1 ...

    0513《编译原理》答案 设计并实现TINYC语言的扫描程序.doc

    在实现过程中,可能会使用诸如lex或flex这样的词法分析工具,它们能够自动生成符合给定正则表达式的扫描程序代码。此外,还需要编写实验报告,详细描述设计过程、遇到的问题以及解决方案,同时附带程序源代码、编译...

    orderless:以任意顺序匹配多个正则表达式的Emacs完成样式

    每个组件可以以几种方式中的任何一种进行匹配:从字面上看,作为正则表达式,作为首字母缩写,采用flex样式或作为多个单词前缀。 缺省情况下,启用regexp和initialism匹配。 完成样式是完成的后端,并从提供完成UI...

    PERL-FLEX.rar_flex_软件编译工具

    标题"PERL-FLEX.rar_flex_软件编译工具"表明了这是一个与PERL和flex相关的压缩文件,其中包含了用于编译的工具,特别是将PERL中的正则表达式转换为flex可以处理的形式。flex是一个开源的、高性能的词法分析器生成器...

    从lex,yacc到javacc

    在lex(以及后来的flex)中,正则表达式用于定义词法规则,帮助识别源代码中的不同元素。下面将深入探讨正则表达式的基本概念及其在lex中的使用。 1. **基本正则表达式运算符** - **字符匹配**:单个字符可以直接...

    flex2.5.33

    在UNIX系统中,Flex 2.5.33是一个经典的版本,它提供了高效的正则表达式匹配功能,用于识别编程语言、配置文件等文本格式的结构。Flex通常与Yacc(Yet Another Compiler-Compiler)结合使用,Yacc负责语法分析,Flex...

    egrep程序c++/bison/flex实现

    在`egrep`的上下文中,Flex会识别输入的正则表达式模式,并将其转换为内部可以处理的形式。 实现`egrep`的步骤大致如下: 1. **词法分析**:使用Flex定义正则表达式的词法规则,例如匹配各种字符、括号、星号等...

Global site tag (gtag.js) - Google Analytics