[学习笔记]ActionScript 3.0 中的正则表达式

正则表达式的构成:

  • 匹配模式:双斜杠之间的内容,用来描述字符串特征;
  • 标志位:第二个斜杠后面跟随的字母,是g、i、m、s、x这五个字母的组合。

例:

var regExp:RegExp = /someString/g;

正则表达式也可以使用正则表达式的构造函数进行声明:

var regExp:RegExp = new RegExp("someString", "g");


标志位:

  • g(global):匹配多个,不加该标识符的话,系统将在找到第一个符合匹配条件的字符串后停止匹配
  • i(ignoreCase):不区分大小写的匹配,应用于A~Z和a~z字符
  • m(multiline):设置此标志后,$和^可以分别匹配行的开头与结尾
  • d(dotall):设置此标志后,“.”可以匹配换行符(\n)
  • x(extended):允许拓展的正则表达式。可以在正则表达式中键入空格,它将作为模式的一部分被忽略,从而可以更加清晰可读地键入正则表达式代码

文字符号备忘:

  1. 普通文字符号:A~Z,a~z,0~9,以及不是元字符的其他符号(如#、=)
  2. 元字符:11个被保留做特殊用途的符号:[ ] \ ^ $ . | ? * + ( )
  3. 不可见字符:
    1. \cx 匹配由x指明的控制字符。如\cM匹配一个Control-M或回车符。x值必须为A~Z或a~z之一,否则c将被视为一个原意'c'字符。
    2. \f 匹配一个换页符,等价于 \x0c 和 \cL
    3. \n 匹配一个换行符,等价于 \x0a 和 \cJ
    4. \r 匹配一个回车符,等价于 \x0d 和 \cM
    5. \s 匹配任何空白字符,包括空格、制表符、换页符等等,等价于 [\f\n\r\t\v]
    6. \S 匹配任何非空白字符,等价于[^\f\n\r\t\v]
    7. \t 匹配一个制表符,等价于\x09 和 \cI
    8. \v 匹配一个垂直制表符,等价于 \x0b 和 \cX

元字符:

  1. [ ],用来表示字符集。字符集是指由中括号中定义的字符集合,字符集中的字符只要有一个符合特征描述,那么就会被认为匹配。
  2. “ - ”表示连字符,可以用来定义字符集的字符范围,如[ a-z ],[ A-Z ],[ 0-9 ]。
  3. “ ^ ” 取反符号,即对方括号中描述的字符集取反,其必须在“ [ ”后面,否则它将作为普通的字符“ ^ ”,没有取反作用。
  4. “ \ ” 转义字符,需要转义的字符包括:
    1. 字符串中的单引号、双引号和反斜杠“ \ ”;
    2. 使用“ / 匹配字符 / 标志位 ”方式定义正则表达式时,字符描述中涉及的无特殊作用的元字符。
    3. 正则表达式字符集中无特殊作用的元字符“ ] \ ^ -”。其中“ ^ ”和“ - ”符号放在不会有特殊用途的地方时,不需要转义。如“ ^ ”未跟随在“ [ ”之后,“ - ”前面或后面没有字符。例:var reg:RegExp = /g[eo^-]t/;
  5. “ . ” 用来表示任何字符(除新行符“\n”除外,大多数语言的正则表达式在默认情况下都不匹配新行符。)
  6. “ | ” 选择符,用来匹配多个可能的正则表达式中的一个,其优先级在正则表达式中最低。
  7. ( ),括号内的表达式将被当做一个整体进行操作。

正则表达式总是返回最左边的匹配结果,而非最合适的匹配结果。
如果要匹配的字符串中有何元字符相同的字符时,那么要用反斜杠“\”来进行转义。(如果用正则表达式构造函数来匹配的话,不需要转义。)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值