AS3.0正则表达式介绍

  正则表达式描述字符模式,通常用于验证字符串是否符合特定模式,或者替换查找与模式匹配的文本。以下介绍AS3.0正则表达式中常用元素:

 

元字符

 

          ^ (尖号)                            匹配字符串的开头。设置 m (multiline) 标志后,尖号还匹配行的开头。请注意,尖号用在字

                             符类的开头时表示符号反转而非字符串的开头。

 

$ (美元符号)                    匹配字符串的结尾。设置 m (multiline) 标志后, $ 还匹配换行 (/n) 符前面的位置。

 

/ (反斜杠)                         对特殊字符的特殊元字符含义进行转义。此外,如果要在正则表达式文本中使用正斜杠字符,也要

                        使用反斜杠字符,例如, /1//2/ 匹配字符 1 后跟正斜杠字符和字符 2

 

. (点)                                 匹配任意单个字符。只有设置 s (dotall) 标志时,点才匹配换行字符 (/n)

 

* (星号)                            匹配前面重复零次或多次的项目。

 

+ (加号)                           匹配前面重复一次或多次的项目。

 

? (问号)                             匹配前面重复零次或一次的项目。

 

( )                                      在正则表达式中定义组。以下情况下使用组:

          • 限制逻辑字符 | 的范围:/(a|b|c)d/

          • 定义数量表示符的范围:/(walla.){1,2}/

  • 用在逆向引用中。例如,下面的正则表达式中的 /1 匹配模式的第一个括号组中的匹配内容:

   /(/w*) is repeated: /1/

 

[ ]                                      定义字符类,字符类定义单个字符可能的匹配:

 /[aeiou]/ 匹配所指定字符中的任意一个。

 在字符类中,使用连字符 (-) 指定字符的范围:

 /[A-Z0-9]/ 匹配从 A Z 的大写字母或 0 9 的数字。

 在字符类中,插入反斜杠对 ] - 字符进行转义:

 /[+/-]/d+/ 匹配一个或多个数字前面的 + -

 在字符类中,以下字符(通常为元字符)被看作一般字符(非元字符),不需要反斜杠:

 /[$.]/ 匹配 $ .

 

| (竖线)                            用于逻辑操作,匹配左侧或右侧的部分:

            /abc|xyz/ 匹配 abc xyz

 

 

元序列

 

{n}                                         指定前一项目的数值数量或数量范围:

{n,}                                        /A{27}/ 匹配重复 27 次的字符 A

                                           /A{3,}/ 匹配重复 3 次或更多次的字符 A

{n,n}                                      /A{3,5}/ 匹配重复 3 5 次的字符 A

 

/b                                           匹配单词字符和非单词字符之间的位置。如果字符串中的第一个或最后一个字符是单词字符,则也匹

                       配字符串的开头或结尾。

 

/B                                           匹配两个单词字符之间的位置。也匹配两个非单词字符之间的位置。

 

/d                                           匹配十进制数字。

 

/D                                           匹配除数字以外的任何字符。

 

/f                                            匹配换页符。

 

/n                                           匹配换行符。

 

/r                                            匹配回车符。

 

/s                                           匹配任何空白字符(空格、制表符、换行符或回车符)。

 

/S                                           匹配除空白字符以外的任何字符。

 

/t                                            匹配制表符。

 

/unnnn                                  匹配字符代码由十六进制数字 nnnn 指定的 Unicode 字符。例如,/u 263a 是一个笑脸字符。/v 匹配

                       垂直换页符。

 

         /w                                          匹配单词字符(A-Za-z0-9 _)。请注意, /w 不匹配非英文字符,如é

 

         /W                                          匹配除单词字符以外的任何字符。

 

/xnn                                       匹配具有指定 ASCII 值(由十六进制数字 nn 定义)的字符。

 

 

字符类需要转义的字符(一般的元字符和元序列在字符类中丢失特殊含义)

 

]                                            定义字符类的结尾。

 

-                                            定义字符范围。

 

/                                             定义元序列并撤销元字符的特殊含义

 

/n                                          匹配换行符。

 

/r                                           匹配回车符。

 

/t                                           匹配制表符。

 

/unnnn                                 匹配具有指定 Unicode 代码点值(由十六进制数字 nnnn 定义)的字符。

 

/xnn                                      匹配具有指定 ASCII 值(由十六进制数字 nn 定义)的字符。

 

 

反转字符类

 

如果在字符类的开头使用尖号 (^) 字符,则将反转该集合的意义,即未列出的任何字符都认

为匹配。下面的字符类匹配除小写字母 (a-z) 或数字以外的任何字符:/[^a-z0-9]/

 

 

数量标识符

* (星号)                          匹配前面重复零次或多次的项目。

 

+ (加号)                         匹配前面重复一次或多次的项目。

 

? (问号)                         匹配前面重复零次或一次的项目。

 

{n}                                         指定前一项目的数值数量或数量范围:

{n,}                                        /A{27}/ 匹配重复 27 次的字符 A

                                           /A{3,}/ 匹配重复 3 次或更多次的字符 A

{n,n}                                      /A{3,5}/ 匹配重复 3 5 次的字符 A

 

 

标志

 

g (global)                            匹配多个匹配。

 

i (ignoreCase)                    不区分大小写的匹配。应用于 A-Z a-z 字符,但不能应用于扩展字符, é é

 

m (multilane)                     设置此标志后, $ ^ 可以分别匹配行的开头和结尾。

 

s (dotall)                              设置此标志后, . (点)可以匹配换行符 (/n)

 

x (extended)                       允许扩展的正则表达式。您可以在正则表达式中键入空格,它将作为模式

                       的一部分被忽略。这可使您更加清晰可读地键入正则表达式代码。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
JavaScript正则表达式和Java正则表达式在语法上有一些差异,但是它们的基本概念和用法是相似的。下面是将JavaScript正则表达式转换为Java正则表达式的一些常见规则: 1. 语法差异: - JavaScript正则表达式使用斜杠(/)作为定界符,而Java正则表达式使用双引号(")作为定界符。 - JavaScript正则表达式中的特殊字符需要进行转义,而Java正则表达式中的特殊字符不需要转义。 2. 字符类: - JavaScript正则表达式中的字符类使用方括号([])表示,而Java正则表达式中使用方括号([])或者Unicode转义(\p{...})表示。 - JavaScript正则表达式中的字符类可以使用连字符(-)表示范围,而Java正则表达式中需要使用Unicode转义(\uXXXX)表示范围。 3. 量词: - JavaScript正则表达式中的量词使用花括号({})表示,而Java正则表达式中使用花括号({})或者问号(?)表示。 - JavaScript正则表达式中的贪婪量词默认是贪婪模式,而Java正则表达式中的贪婪量词需要在后面添加问号(?)来表示非贪婪模式。 4. 边界匹配: - JavaScript正则表达式中的边界匹配使用插入符号(^)和美元符号($)表示,而Java正则表达式中使用\A和\Z表示。 5. 其他差异: - JavaScript正则表达式中的捕获组使用圆括号(())表示,而Java正则表达式中使用圆括号(())或者方括号([])表示。 - JavaScript正则表达式中的反向引用使用反斜杠加数字(\1、\2等)表示,而Java正则表达式中使用美元符号加数字($1、$2等)表示。 以上是一些常见的JavaScript正则表达式转换为Java正则表达式的规则。具体转换时,还需要根据具体的正则表达式进行适当的调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值