<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont

简介: 第一个正则表达式:正则表达式是包含文本和特殊字符的字符串,该字符串描述一个可以识别各 种字符串的模式。 上面第一个正则表达式模式是“foo”,该模式没有使用任何特殊字符进行匹配其他字符,所以能够匹配此模式的只有foo字符串,同理,Python和abc123一样。

第一个正则表达式:

  • 正则表达式是包含文本和特殊字符的字符串,该字符串描述一个可以识别各 种字符串的模式。

    • 上面第一个正则表达式模式是“foo”,该模式没有使用任何特殊字符进行匹配其他字符,所以能够匹配此模式的只有foo字符串,同理,Python和abc123一样。

特殊符号与字符

  • 常见的正则表达式的特殊符号与字符:

  • 创建字符集:

    • 怎样才能匹配句点(dot)或者句号(period)字符?
    • 要显式匹配一个句点符号本身,必须使用反斜线转义句点符号的功能,例如“.”。
    • 尽管句号可以匹配任意符号,但某些时候想要匹配特定的字符,于是可以使用方括号。

    • 关于[cr][23][dp][o2]这个正则表达式有一点需要说明:如果仅允许 “r2d2”或者“c3po” 作为有效字符串,就需要更严格限定的正则表达式。因为方括号仅仅表示逻辑或的功能, 所以使用方括号并不能实现这一限定要求。唯一的方案就是使用择一匹配,例如, r2d2|c3p 。
  • 限定与否定:

    • 方括号中两个符号中间用连接字符(-)连接,用于指定一个字符的范围.
    • 如果脱字符(^)紧跟在左方括号后面,这个符号就表示不匹配给定字符集中的任何一个字符。

  • 使用闭包操作符实现存在性和频数匹配
    • 星号或者星号操作符(*)将匹配其左边的正则表达式出现零次或者多次的情况(在计算机编程语言和编译原理中,该操作称为Kleene闭包)
    • 加号(+)操作符将匹配一次或者多次出现的正则表达式(也叫正闭包操作符)
    • 问号(?)操作符将匹配零次或者依次出现的正则表达式
    • 大括号({}),里面或者是单个值,将最终精确地匹配前面的正则表达式 N 次(如果是{N})或者一定范围的次数。,{M,N}将匹配 M~N 次出现。
    • “尽可能少的次数”是什么意思?当模式匹配使用分组操作符时,正则表达式引擎将试图 “吸收”匹配该模式的尽可能多的字符。这通常被叫做贪婪匹配。

  • 使用圆括号指定分组 :
    • 目的:
      • 匹配模式的子字符串可以保存起来供后续使用。 这些子组能够被同一次的匹配或者搜索重复调用,或者提取出来用于后续处理。
      • 对正则表达式进行分组;
      • 匹配子组。
目录
相关文章
|
Web App开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
TCP洪水攻击(SYN Flood)的诊断和处理 Posted by  海涛  on 2013 年 7 月 11 日 Tweet1 ​1. SYN Flood介绍 前段时间网站被攻击多次,其中最猛烈的就是TCP洪水攻击,即SYN Flood。
1190 0
|
Web App开发 存储 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
      前段时间公司hadoop集群宕机,发现是namenode磁盘满了, 清理出部分空间后,重启集群时,重启失败。 又发现集群Secondary namenode 服务也恰恰坏掉,导致所有的操作log持续写入edits.new 文件,等集群宕机的时候文件大小已经达到了丧心病狂的70G+..重启集群报错 加载edits文件失败。
1085 0
|
Web App开发 监控 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
Datanode的日志中看到: 10/12/14 20:10:31 INFO hdfs.DFSClient: Could not obtain block blk_XXXXXXXXXXXXXXXXXXXXXX_YYYYYYYY from any node: java.
801 0
|
Web App开发 前端开发
|
Web App开发 前端开发 算法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
基于大数据的精准营销与应用场景 2015年08月11日 大数据 大数据营销时代来临营销学领域过去半个多世纪的发展让我们见证了从“以产品为中心”到“以客户为中心”的转变。
1071 0
|
Web App开发 前端开发 程序员
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
Facebook 内部分享:不论你如何富有,你都赚不到更多的时间,你也回不到过去。没有那么多的假如,只有指针滴答的时光飞逝和你应该好好把握的现在,以下25张PPT的分享将为您带来时间价值管理的技巧。
707 0
|
SQL Web App开发 前端开发
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
     如果在INSERT语句末尾指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则在出现重复值的行执行UPDATE;如果不会导致唯一值列重复的问题,则插入新行。
894 0
|
Web App开发 前端开发
|
数据库
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html><head><meta http-equiv="Cont
CentOS 6.5安装配置ldap 时间:2015-07-14 00:54来源:blog.51cto.com 作者:“ly36843运维” 博客 举报 点击:274次 一.
1028 0

热门文章

最新文章