加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Flash as3 正则表达式

发布时间:2020-12-15 19:51:41 所属栏目:百科 来源:网络整理
导读:一、术语 - 字面字符:可以直接显示的字符 - 元字符:有特殊含义的字符,有()[]{} .*+? ^$| - 转义字符:反斜杠 - 元序列:有特殊含义的字符序列 - 字符类:字符集合其中取一 - 数量表示符:用于表示匹配项重复的次数 二、基本概念 正则表达式包含模式和标志 ^:匹

一、术语
- 字面字符:可以直接显示的字符
- 元字符:有特殊含义的字符,有()[]{} .*+? ^$|
- 转义字符:反斜杠
- 元序列:有特殊含义的字符序列
- 字符类:字符集合其中取一
- 数量表示符:用于表示匹配项重复的次数

二、基本概念

  • 正则表达式包含模式和标志
  • ^:匹配字符串开头当设置了m时匹配行开头
  • $:匹配字符串的结尾,当设置了m时还匹配换行符前面的位置。
  • .:匹配任意单个字符,当设置了s时匹配换行符。
  • 数量表示符
  • *:重复0或者多次
  • .:重复1或者多次
  • ?:重复0或者1次
  • {m}:重复m次
  • {m,}:重复m次m或以上
  • {m,n}:重复m到n次数
    默认情况,正则会执行无限匹配,即尝试尽可能多的匹配之后才进入正则下一部分。可以在数量符后面添加?更改为惰性匹配,这时会匹配最少的字符就进入之后的模式。

6.字符类(字符集合)[]
定义匹配集合中任意单个字符。在字符类中,通常在正则里的元字符和元序列不具特殊含义不需要转义。除了以下几个
]-^,其中-用于表示范围,^表示取反,即不在字符类中,仅当在开头才有特殊含义才需要反转。

7.使用组()
捕获组:可以在正则中用12的形式逆向引用组,在字符中可以通过 1 2的形式引用。
非捕获组:(?:)
正向前捕获组:(?=)
负向前捕获组:(?!)
命名捕获组:(?P)

三、标志和属性

  • g:全局匹配搜索,多个匹配。
  • i:不区分字母大小写。
  • m:设置$可以访问行头,设置^可以访问行尾。
  • x:允许扩展,自动忽略空格字符。
  • lastIndex:指定字符串中的索引位置用于下次匹配。

四、创建
正则可以用2种但是来创建,一种是正则语法,另一种是使用带字符串的构造函数。
使用正则语法:在需要包含/的正则里面需要用转义,如果要让元字符直接显示,需要在前面加用转义字符。
使用构造函数:在包含引号、和元序列的前面需要加转义字符。该过程实际就是字符串解析成正则表达式语法,在匹配的时候再对正则表达式语法解析。

五、使用 1.RegExp.test(str:String):void 检测str是否有与正则匹配的子串 2.RegExp.exec(str:String):Object 在str中执行匹配搜索,没有匹配返回null.否则否则返回一个包含以下具有以下属性的对象: 一个数组:索引0是完全匹配的子串,接下来是与正则中的组匹配的子串。 index:匹配的子串在原字符串中的索引。 input:原串str. 3.String.search(pattern:*):int 返回与pattern匹配的第一个子串的索引。 4.String.match(pattern:*):Array 返回与pattern匹配的所有子串。仅当pattern是正则且设置了g时才可能返回多个匹配项,否则返回仅包含第一个匹配项。 5.String.replace(pattern*,repl:Object):String 相对于字符串匹配的pattern返回一个新串。 repl可以是一个函数,此时replace会按序传以下参数: 匹配的串 匹配组的串 匹配串的索引 完整原串

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读