正则表达式 学习资料整理

常用正则表达式 整理篇
http://www.jb51.net/article/17355.htm

正则表达式高级学习技巧
http://www.jb51.net/article/9229.htm

1.正则表达式简介

正则表达式(Regular expression,简写为Regexes)是一种用来操作和检验字符串数据的强大工具。它相当与一串特殊的字符,用它可以转换成算法,对文本进行匹配等操作。

事实上正则表达式有其自身的一套语法,这种语法对于初学者来说显得有些晦涩难懂。尤其是其构造比较困难,称为很多入门者的障碍。但当掌握后却可以轻易的解决以前不容易解决的很多文本类问题,如验证提取等。

其常用场合有如下三种:

Ø        测试字符串的某个模式。例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式。这称为数据有效性验证。

Ø        替换文本。可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字。

Ø        根据模式匹配从字符串中提取一个子字符串。可以用来在文本或输入字段中查找特定文字。

2.正则表达式基础语法

2.1匹配不同类型的字符

字符类

匹配的字符

\d

匹配一个数字字符。等价于 [0-9]。

\D

匹配一个非数字字符。等价于 [^0-9]。

\w

匹配包括下划线的任何单词字符。等价于'[A-Za-z0-9_]'。

\W

匹配任何非单词字符。等价于 '[^A-Za-z0-9_]'。

\s

匹配任何空白字符,包括空格、制表符、换页符等等。等价于 [ \f\n\r\t\v]。

\S

匹配任何非空白字符。等价于 [^ \f\n\r\t\v]。

.(点号)

任一字符

[...]

括号中的任一字符

[^…]

非括号中的任一字符

2.2定位控制字符

^

其后的模式必须在字符串的开始处,如果是多行则在任一行的开始C#需要设定Multiline标志

$

前面的模式必须在一行的末尾,如果是多行,则在任意行的末尾

\A

前面的模式必须在字符串的开始处;多行标志被忽略

\z

前面的模式必须在字符串的末尾处,多行标志被忽略

\Z

前面的模式必须位于字符串的末尾或位于换行符前

\b

匹配一个单词字符的开始,单词字符是[a-zA-Z0-9]中的一位

\B

匹配一个非单词边界的位置, 不在一个单词的开始

2.3指定重复字符

{n}

匹配前面的字符n次

{n,}

匹配前面的字符最少n次

{n,m}

匹配前面的字符n至m次

?

匹配前面的字符0次或1次

+

匹配前面的字符至少1次

*

匹配前面的字符至少0次

2.4特殊控制类

|

指定字符替换,即该位置可以是|两边的任一个表达式

2.5 特殊字符转义序列

\\

匹配”\”

\.

匹配“.”

\*

匹配“*”

\(

匹配“(”

\)

匹配”)”

\?

时间: 2024-10-22 21:57:50

正则表达式 学习资料整理的相关文章

正则表达式 学习资料整理_正则表达式

常用正则表达式 整理篇http://www.jb51.net/article/17355.htm 正则表达式高级学习技巧http://www.jb51.net/article/9229.htm 1.正则表达式简介 正则表达式(Regular expression,简写为Regexes)是一种用来操作和检验字符串数据的强大工具.它相当与一串特殊的字符,用它可以转换成算法,对文本进行匹配等操作.        事实上正则表达式有其自身的一套语法,这种语法对于初学者来说显得有些晦涩难懂.尤其是其构造比

Go语言学习资料整理

整理网上找到的Golang语言学习资料 基础 基础教程 书籍在线版 Go 指南-A Tour of Go Go语言圣经(中文版) Effective Go中文版 Go Web编程 build-web-application-with-golang Go入门指南 The Way to Go <The Way to Go>中文译本,中文正式名<Go入门指南> Golang学习室 Go轻松学 TechDoc <Go实战开发> go-best-practice 基础教程 书籍离

C#中的正则表达式 学习资料

C#中的正则表达式 Jeffrey E.F. Friedl写了一本关于正则表达式的书<精通正则表达式>.作者为了使读者更好的理解和掌握正则表达式,编造了一个故事.该书的语言以perl为主.据我所知C#中的正则表达式也是基于perl5.所以它们应该有许多的共同之处. http://ike.126.com 其实,我并不打算原封不动的对该书的内容进行翻译,一则这本书内容太多了,我根本就不胜任翻译这项工作:二则如果我真的把这本书翻译过来,同时把里面的代码换成C#,在没有征得原作者的情况下,可能有侵权的

javascript的正则表达式学习资料复习_正则表达式

关于反向引用 复制代码 代码如下: // 测试函数 function matchReg(reg, str) { var result = str.match(reg); if(result) { console.dir(result); } else { console.log('match failed'); } } var reg = /([A-Za-z]{0,6})\1/; var str = 'AndrewAndrew'; // 测试通过 matchReg(reg, str); //通过

Flex 非常实用的学习资料整理_Flex

[改变输出swf的尺度,背景颜色或帧频] 在"Navigator"窗框里右键你的项目>选中"Properties">选中"ActionScript Compiler">在"Additional compiler arguments"里输入你所需要的命令 如想改变背景颜色,请输入: -default-background-color 0xffffff [鼠标坐标] mouseX mouseY [检查变量类型并返

javascript的正则表达式学习资料复习

关于反向引用 复制代码 代码如下: // 测试函数 function matchReg(reg, str) { var result = str.match(reg); if(result) { console.dir(result); } else { console.log('match failed'); } } var reg = /([A-Za-z]{0,6})\1/; var str = 'AndrewAndrew'; // 测试通过 matchReg(reg, str); //通过

Kafka学习资料整理

kafka中文文档: http://www.orchome.com/kafka/index kafka英文版: https://kafka.apache.org/0100/documentation.html 其中0.10.x比0.9.x多了3类API 1 Streams API 2 Connect API 3 Legacy APIs kafka 0.10新特性 https://www.iteblog.com/archives/1677.html kafka 机制:      http://bl

【资料整理】入门级安卓学习资料分享

问题描述 本帖最后由 oscar 于 2015-5-6 18:10 编辑 对于一门技术而言,在刚刚接触的过程中,总会感到迷茫~并且会有很多时间浪费在资料删选.资料整理这些繁琐的事情上,下边是imgeek小编为大家整理的相关资料,希望对初学者能有所帮助!**一:Android开发也是需要java基础的,所以我们也不能忽略**马士兵的java基础http://pan.baidu.com/s/1pJ9DfNt毕向东的java基础http://pan.baidu.com/s/1GPmyy张孝祥的java

[转]程序员资料整理

前言 一些主流技术资源整理. 目录 资料篇 技术站点 必看书籍 大牛博客 GitHub篇 工具篇 平台工具 常用工具 第三方服务 爬虫相关(好玩的工具) 安全相关 Web服务器性能/压力测试工具/负载均衡器 大数据处理/数据分析/分布式工具 Web前端 语言篇 Scala Java Python Swift .NET C & C++ 其他 游戏开发相关 日志聚合,分布式日志收集 RTP,实时传输协议与音视频 资料篇 技术站点 在线学习:Coursera.edX.Udacity.MIT公开课.MO