<!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

本文涉及的产品
转发路由器TR,750小时连接 100GB跨地域
简介: 第一个正则表达式:正则表达式是包含文本和特殊字符的字符串,该字符串描述一个可以识别各 种字符串的模式。 上面第一个正则表达式模式是“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开发 前端开发 Android开发
<!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
使用MAT分析内存泄露 对于大型服务端应用程序来说,有些内存泄露问题很难在测试阶段发现,此时就需要分析JVM Heap Dump文件来找出问题。
786 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
import java.util.LinkedHashMap;import java.util.Map; /** * LRU (Least Recently Used)  */public class LRUCache e...
635 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
一,事务的4个基本特征  Atomic(原子性): 事务中包含的操作被看做一个逻辑单元,这个逻辑单元中的操作要 么全部成功,要么全部失败。
893 0
|
Web App开发 前端开发 Java
|
Web App开发 Java Apache
|
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
在统计分析系统中, 维度:指人们分析事物的角度。比如,分析活跃用户,可以从时间的维度,也可以从地域的维度去看,也可以时间、地域两个维度组合去分析。
668 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
如何建立一个“铁打的营盘”? 中国有句古话,叫做铁打的营盘流水的兵。   我相信,创业初期,当团队里有人离开的时候,肯定有不少创业者拿这句话来安慰自己。
817 0