<!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
我们以前使用过的对hbase和hdfs进行健康检查,及剩余hdfs容量告警,简单易用 1.针对hadoop2的脚本: #/bin/bashbin=`dirname $0`bin=`cd $bin;pwd`STATE_OK=...
1165 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
在运行一个group by的sql时,抛出以下错误信息: Task with the most failures(4):  -----Task ID:  task_201411191723_723592_m_000004URL:  http://DDS0204.
1107 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
异步通信 对于BS(Browser-Server 浏览器)架构,很多情景下server的处理时间较长。 如果浏览器发送请求后,保持跟server的连接,等待server响应,那么一方面会对用户的体验有负面影响; 另一方面,很有可能会由于超时,提示用户服务请求失败。
856 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
fuser可用于查询文件、目录、socket端口和文件系统的使用进程 1.查询文件和目录使用者 fuser最基本的用法是查询某个文件或目录被哪个进程使用: # fuser -v .
999 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
为首次部署MongoDB做好准备:容量计划和监控 作者Mat Keep ,译者孙镜涛如果你已经完成了自己新的MongoDB应用程序的开发,并且现在正准备将它部署进产品中,那么你和你的运营团队需要讨论一些关键的问题: 最佳部署实践是什么? 为了确保应用程序满足它所必须的服务层次我们需要监控哪些关键指标? 如何能够确定添加分片的时机? 有哪些工具可以对数据库进行备份和恢复? 怎样才能安全地访问所有新的实时大数据? 本文介绍了硬件选择、扩展、HA和监控。
2754 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
可伸缩系统的架构经验 Feb 27th, 2013 | Comments 最近,阅读了Will Larson的文章Introduction to Architecting System for Scale,感觉很有价值。
2455 0
|
Web App开发 前端开发 Java
<!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
 Connection reset by peer的常见原因: 1)服务器的并发连接数超过了其承载量,服务器会将其中一些连接关闭;    如果知道实际连接服务器的并发客户数没有超过服务器的承载量,看下有没有网络流量异常。
984 0