正则表达式 一、基本定义及组成 组成:一个完整的表达式由字符簇,限定符,定位符等组成。

Slides:



Advertisements
Similar presentations
分享人:張益源. 個人資料介紹 姓名:張益源 畢業:體育系 97 級 專長:田徑、籃球、游泳 任教學校:慈濟大學實驗國民小學 學校職務:體育兼資訊老師.
Advertisements

第四章 教育观察研究.
新课程 下的课堂教学.
肝炎的饮食 肝炎的种类 肝炎的饮食 肝炎的注意事项 资料来源何氏舒肝方官网.
第三章 申 论 写 作 第一节 概 述 一、申论含义 申论即针对给定的材料或话题,概括主要问题、提出解决方案、对所提观点展开论证。
哲學概論 課程網頁:
陳武將醫師 傷寒針灸心得整理 孫宗鼎 (Tue) 針灸部分用藍字 陳武將醫師完整原文含藥,可參考
第四课:词语万花筒 看我“七十二变” ——多义词.
主讲人:李霞 重庆市地方税务局纳税人网络学校
人教版生物学七年级下册 第四单元 第三章 第一节 呼吸道对空气的处理 作者:北京市十一中学 吴 泠.
学习十三五规划,加强学校行政执法 渤油二中党支部 2016年4月12日.
下编 从新中国成立到社会主义建设新时期(1949— )
峡山区王家庄街道王家庄初级中学 王淑爱 郭晓斐 一课时 适于初中阶段
博愛國小四年級 自然與生活科技第一單元平時考
解读《教育督导条例》 查海波 省政府教育督导委员会办公室
植物要怎麼繁衍它的下一代? 為了適應環境,植物的根、莖、葉、花、果實和種子,它們各有什麼生存的方法呢?
中国人事科学院 企业诊断中心 主任 甄源泰 研究员
第四章 教育目的.
安全生产制度检查 北京市安全生产监督管理局 侯占杰.
人民教育出版社 章建跃 数学学习与智慧发展 人民教育出版社 章建跃
45条足以震撼你的生活常识.
公共部门人力资源管理.
第二节 武装斗争 本节内容 一、武装斗争是中国革命的特点和优点之一 进 入 二、中国共产党领导武装斗争的特点和实质 进 入
10 郑和远航 郑和 郑和,1371年生于云南昆阳州(今昆明晋宁县)一个信奉伊斯兰教的回族家庭,原名马和,小字三宝,十一岁时在明太祖朱元璋发动的统一云南的战争中被俘进宫,后当朱元璋四子燕王朱棣的近侍。1403年朱棣登基,史称明成祖。次年正月初一,朱棣念他有勇有谋,屡立奇功,便赐姓“郑”,改称郑和,并提拔为内宫太监,于永乐三年(1405年7月11日)率领庞大船队首次出使西洋。自1405年到1433年,漫长的28年间,郑和船队历经亚非三十余国,涉十万余里,与各国建立了政治,经济,文化的联系,完成了七下西洋的伟
云南外事外语职业学院 入党积极分子培训 赵田甜.
認識食品中毒 一、什麼是食品中毒? 二人或二人以上攝取相同的食品而發生相似的症狀,並且自可疑的食餘檢體及患者糞便、嘔吐物、血液等人體檢體,或者其它有關環境檢體(如空氣、水、土壤等)中分離出相同類型(如血清型、噬菌 體型)的致病原因,則稱為一件“食品中毒”。 但如因攝食肉毒桿菌毒素或急性化學性中毒而引起死亡,即使只有一人,也視為一件“食品中毒”。
陈冤之魅,心鬼之泪 ——雾里探花 《东方快车谋杀案》 By第二小组.
故事会 盘古开天劈地 在很久很久以前,天地可不象我们现在看到的这样————天高高的在上面,地在我们的脚下,中间隔着几千几万米远。那个时候的天地就象是一个包在大黑壳里的鸡蛋,混混沌沌的,什么也看不清。人们走路都得弯着腰,耕田打猎都很不方便,因为一不小心抬个头,就会碰到天,惹它生气,接着就会招来狂风暴雨。因此所有的植物也都长不高,所以结的粮食和果实都很少,根本就不够大家吃。还经常会发生饿死人的事情。
印染纺织类艺术.
创业数字图书馆.
中國語文基礎知識手冊 不同的詞類 虛詞.
錯誤烹調法.
[英] 罗伦·乔尔德  文/图.
認 識 美 濃 第五篇:經濟動植物篇 (1)經濟植物篇.
2008年3月10日 補教經營管理與領導決策 主講人:林進榮 總裁 志光教育科技集團 志聖研究所 大碩文化教育事業 志光數位科技股份有限公司
威海——我的家乡 园林1303班 孙婷婷.
重视家庭 支持家庭 ——建立支持家庭的政策体系.
徐州人口老龄化与 居家养老服务的对策和建议
1.不同人口增长模式的主要特点及地区分布。 2.环境承载力与人口合理容量的区别。.
依法治国进程中的社会保障、民生建设 清华大学法学院 郑尚元.
人口与计划生育有关法规的学习和理解 荔湾区人口和计划生育局 二〇〇七年一月.
[提要] 本条论述外感痉病趋于热化的证候。 [提要] 本条论述外感痉病趋于热化的证候。 1.痉病主症是颈项强急,卒口噤,背反张。 2.痉病兼症是:邪在太阳,兼见身热、恶寒、足寒;邪在阳明,兼见时头热、面赤、目赤、独头动摇。
素问 · 痹论篇第四十三 主讲人 王洪京.
必修二 集体备课 南京一中 杨爽.
江苏开拓信息与系统有限公司.
开放英语1 Unit
歡迎光臨像我一樣可愛的童詩世界.
第二章 实验中医学的 基本方法.
痔的临床诊疗进展 成都肛肠专科医院 曹暂剑.
第二十五章 感染性腹泻 infectious diarrhea
班級:幼三甲 姓名:洪秦晴 學號:496I0046 指導老師:陳韻如
VHDL 硬體描述語言 數位電路設計實務 第二章 VHDL 硬體描述語言簡介.
温病学在脾胃病中的应用 ——杨晋翔教授.
UCHome模板解析 Zuoyuan 2012/3/23.
Tool Command Language --11级ACM班 金天行.
正则表达式一点通:正则中的中文.
在PHP和MYSQL中实现完美的中文显示
Signutil.
C#程序设计基础 $1 绪论.
第二章 Java语言基础.
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
基于UNIX操作系统的 编程技术 电子科技大学计算机学院 刘玓 联系方式:
VB与Access数据库的连接.
第4章 Excel电子表格制作软件 4.4 函数(一).
第九节 赋值运算符和赋值表达式.
3.16 枚举算法及其程序实现 ——数组的作用.
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
本节内容 C语言的汇编表示 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
数据表示 第 2 讲.
顺序结构程序设计 ——关于“字符串”和数值.
Presentation transcript:

正则表达式 一、基本定义及组成 组成:一个完整的表达式由字符簇,限定符,定位符等组成。 定义:正则表达式是有一定规则的字符串,这个字符串可以去另一个字符串或文本中获取匹配的结果,可以简单的理解为字符串查找函数的升级版。真正的用好正则表达式,正确的理解元字符是最重要的事情. 组成:一个完整的表达式由字符簇,限定符,定位符等组成。 ->>字符簇为字符的集合,例如:[jl_tech] 。 ->>限定符代表字符簇中字符出现次数的限定,例如:{m,n} ->>定位符即行的开始和结束: ^ 脱字符 表示一行的开始([^0-9]) $ 美元符 表示一行的结束 \b 单词分界符

正则表达式 二、字符簇写法 完整写法 [a-z] 所有的小写英文字母 [a-zA-Z] 所有的大小写英文字母 [0-9] 所有的数字 所有字母及数字 简写格式 \d 和 \D 代表数字,[0-9] 代表非数字,[^0-9] \w 和 \W 字母数字,[a-zA-Z0-9] 非字母和数字,[^a-zA-Z0-9] \s 和 \S 任何空白字符 非空白字符 \t \n \r 制表符 换行符 回车符

正则表达式 三、限定符写法 完整写法 {0,n} 代表0-n个 {0,} 代表0个以上 {n} 代表n个 {n,} 代表n个以上 简写格式 * 代表0次以上 + 代表1次以上 ? 代表0次或1次以上 匹配一次可以省略

正则表达式 四、匹配风格及函数比较 -》posix风格 1.用正则表达式匹配字符串 ereg(正则表达式,字符串,array) ------- 返回值mixed eregi(正则表达式,字符串,array) ------ 返回值mixed 2.用正则表达式拆分字符串 split(正则表达式,str) --------------- 返回值array -》perl风格 preg_match(正则表达式,字符串,array) ------- 返回值int(匹配一次终止) preg_match_all(正则表达式,字符串,array) ------- 返回值int preg_split(正则表达式,$string) ------- 返回值array

正则表达式 五、比较总结 风格 简写 匹配模式 引用变量 引用变量个数 posix x \0、\1 10个 perl √ $0、$1 100个 类别 PCRE是一个轻量级的函数库,比Boost的正则表达式库要小的多,十分易用,功能也很强大,性能也超过了一些经典的正则表达式库。

正则表达式 六、匹配模式 preg_match_all(“/x|y/i”,“axX”,$arr); //结果为xX i 忽略大小写 m 增强的行锚点模式 s 点号通配模式 x 宽松排列和注释模式 u 以utf-8读取正则表达式和目标字符串 e 将replacement作为PHP代码(只用于preg_replace) S 启用 PCRE的”study”优化尝试 U 修改匹配策略由贪婪(匹配尽可能多的字符)转为非贪婪(匹配尽可能少的字符)

正则表达式 七、反向引用(perl) 格式:变量:$0,$1,$2,$3,$4,$5............ $0里面放的是整个正则表达式匹配的结果 $1第一个子表达式匹配到的结果 $2第二个子表达式匹配到的结果 ………… 例:$str_time = ’12/30/2013’转化为:2013-12-30 preg_replace("/(\d{2})\/(\d{2})\/(\d{4})/","$3-$1-$2",$time)

正则表达式 八、小练习 1.匹配邮箱(大众化): /^\w+@\w+(\.\w+)+$/ E 2.验证身份证号码:/^\d{15}(\d{2}[A-Za-z0-9])?$/ 3.验证URL地址(普通):/^http://[\w]+\.[\w]+\.[a-zA-Z]{2,6}$/ 4.下面代码中变量$str的值为( ) $str=Preg_replace(“/(\d+)-(\d+)-(\d+)/”,”$0/$2”,”1-2-3”); A. 1-2-3/3 B. 1/3 C. 2/3 D. 1/2 E. 1-2-3/2 F. 语法错误 /^\w+@\w+(\.\w+)+$/ E