元字符:^ $ \ . * + ? ( ) [ ] { } |
^ 匹配字符串的开头
$ 匹配字符串的结尾
\ 转义字符,用于元字符
* 0或多个前面的字符
+ 至少一个前面的字符
? 0或1个前面的字符
. 任意单个字符 except newline
[] 某个范围的单个字符
() 集合
| 或运算,匹配左或右
元序列:
{n} 恰好匹配n个前面的
{n,} 匹配至少n个前面的
{n,m} 匹配至少n个,至多m个前面的
\b 匹配只能放在前面或结尾
\B 与\b相反
\d 数字
\D 数字以外的
\w 单词字符(A-Z、a-z、0-9 或 _)
\W 除单词字符以外的任何字符
\unnnn 字符代码由十六进制数字 nnnn 指定的 Unicode 字符(\u263a ☺)
\xnn 具有指定 ASCII 值(由十六进制数字 nn 定义)的字符。
\s 任意空白字符(空格、制表符、换行符或回车符)
\S 除空白字符以外的任何字符
\n 换行符
\r 回车符
DOS中专用的
\v 垂直换页符DOS
\t 制表符DOS
\f 换页符DOS
标志:
g 如果不指定g,那么在查找的时候只会返回一个。
I 默认情况下,匹配区分大小写。如果设置 i (ignoreCase) 标志,将忽略区分大小写
m 匹配”行”的开头和结尾.注意这里的行只有\n字符表示行的结束,其余不行,包括\r
s 用点来匹配换行符
x 在正则表达式中使用 x (extended) 标志时,则会忽略在模式中键入的所有空格
附加:
[abc] character a,b or c
[^abc] Any character except a,b or c
[a-z] a through z
[]中‘空格’和\s都可以表示空格符
但[]外只能用\s表示空格符
AS3中声明正则表达式的两种方式
var reg:RegExp = new RegExp(“test-\\d”, “g”);
var reg:RegExp = /test-\d/g;
使用
var str:String = ‘<span>test string</span>’;
str.replace(reg,’-');
str.match(reg);
量词类型
贪婪量词:
先看整个字符串是不是一个匹配。如果没有发现匹配,它去掉最后字符串中的最后一个字符,并再次尝试。如果还是没有发现匹配,那么 再次去掉最后一个字符串,这个过程会一直重复直到发现一个匹配或者字符串不剩任何字符。简单量词都是贪婪量词。
惰性量词:
先看字符串中的第一个字母是不是一个匹配,如果单独着一个字符还不够,就读入下一个字符,组成两个字符的字符串。如果还没有发现匹配,惰性量词继续从字符串中添加字符直到发现一个匹配或者整个字符串都检查过也没有匹配。惰性量词和贪婪量词的工作方式恰好相反。
支配量词:
只尝试匹配整个字符串。如果整个字符串不能产生匹配,不做进一步尝试。
贪婪量词 惰性量词 支配量词 描述
————————————————————————————-
? ?? ?+ 可以出现0次或1次,但至多出现1次
* *? *+ 可以出现任意次,也可以不出现
+ +? ++ 出现1次或多次,但至少出现1次
{n} {n}? {n}+ 一定出现n次
{n,m} {n,m}? {n,m}+ 至少出现n次,但至多不能超过m次
{n,} {n,}? {n,}+ 可以出现任意次,但至少出现n次
例子:
<bord>test</bord>
使用 /<.*?>/g 结果: -test-
使用 /<.*>/g 结果: -
From - http://blog.ityao.com/archives/590
分享到:
相关推荐
Java中正则表达式使用方法详解 正则表达式是字符构成的串,定义了一个用来搜索匹配字符串的模式。 Java中的正则表达式使用方法详解将为读者提供一个详细的指南,了解正则表达式的基础知识和使用方法。 一、正则...
javascript中正则表达式用法详解
### ABAP中正则表达式的简单使用 #### 1. **匹配所有字符** 在ABAP中,可以使用`[^x00-xff]*`这样的正则表达式来匹配所有字符,其中`[^x00-xff]`表示除了ASCII控制字符之外的所有字符,而`*`则表示可以匹配任意...
JAVA中正则表达式详解
VBA正则表达式在Excel中使用,希望能给大家有所帮助,还有其他相关EXCEL资源,需要有的可以联系我. 谢谢.
下面将详细介绍正则表达式的常见语法和在Java中的使用。 首先,正则表达式的基本元素包括: 1. `.`:匹配任何单个字符,除了换行符。 2. `\d`:匹配数字,等价于`[0-9]`。 3. `\D`:匹配非数字字符。 4. `\s`:...
### PHP中的正则表达式应用详解 在PHP编程中,正则表达式是一种...以上是关于PHP中正则表达式的详细解析与实际应用案例。通过学习和理解这些正则表达式,你可以更高效地处理各种文本数据,提高程序的功能性和健壮性。
javascript中正则表达式实现输入内容过滤
### C#中正则表达式应用详解 #### 引言 正则表达式是一种强大的文本处理工具,在C#中被广泛应用于数据验证、文本搜索、替换等场景。本文将深入探讨C#中正则表达式的应用,从基本语法到高级用法,帮助读者更好地...
通过本文的学习,读者应该能够理解正则表达式的基本概念,掌握Python中正则表达式库re的使用,并能够将正则表达式应用到实际的文本处理问题中。 本文不仅介绍了正则表达式的使用技巧和实际应用,还讨论了性能优化和...
本篇将深入探讨Objective-C中正则表达式的使用,特别是涉及到特殊符号转义字符的处理。 在Objective-C中,我们通常使用NSRegularExpression类来操作正则表达式。首先,我们需要了解一些基础的正则表达式语法,比如...
本文主要介绍了关于Oracle中正则表达式的使用方法,下面话不多说了,来一起看看详细的介绍。 Oracle使用正则表达式离不开这4个函数:regexp_like、regexp_substr、regexp_instr、regexp_replace。 regexp_like 该...
尤其是在Java语言环境中,`java.util.regex`包提供了丰富的API来支持正则表达式的创建与使用。然而,在实际应用中,随着正则表达式的复杂度增加,其执行效率往往会成为性能瓶颈之一。本文将深入探讨Java中正则表达式...
- 当两者结合使用,如`^abc$`,则会匹配整个字符串仅由"abc"组成的文本。 2. **'*', '+', 和 '?'** - `*` 表示零个或多个前面的字符,相当于`{0,}`。例如,`ab*`匹配任何以"a"开头,后面跟着零个或多个"b"的字符...
下面,我们将深入探讨C#中正则表达式的运用,并通过实例解析其工作原理。 1. 正则表达式基础 - 定义:正则表达式是由特殊字符(元字符)和普通字符组成的字符串,用来描述一种字符串模式。 - 元字符:例如 `.` ...
北风网讲javascript正则表达式,屏幕录像专家录制的,exe格式直接双击观看,js的正则表达式难吆,有老师边讲边演示可带你快速入门吆。
javascript中正则表达式反向引用示例介绍.doc