词 尾 即 表示 前 面或 者 后面为 非 单

  • No School
  • AA 1
  • yilingshuang
  • 37

This preview shows page 20 - 24 out of 37 pages.

表示 面或 后面为 类字符 如: r“ \b foo \b 匹配 foo ”,“ foo .” “( foo )” “bar foo baz” 但不 匹配 foobar”“foo3” : str \b’ 表示 退 格字符,所以正则表达式参数或 者前 ,或 使用 字符串 r \ \b foo \\b r“ \ b foo \b \B \b 含义 相反 表示位于单 如: ' py \B 匹配 py thon” “ py 3” “ py 2”, 但不 匹配 happy” ”sleepy” ”py!”
Image of page 20
4.2.1 正则表达式元字符 - 重复限 定符 重复限 定符 :指定 重复 的次数 正则表达式 说明 X{n,m} X 重复 n m 如: o {1,3} 匹配 f oooooo d 中的 3 o” 和后 3 o” X{n,} X 重复 n 如: o {2,} 匹配 f oooooo d 中的所有的 o”, 匹配 bob” 中的 o” 贪婪 匹配算法 X{n} X 重复 n 如: r“ \b[0-9]{3} 匹配 000” ~ “ 999” , “o {2}” 匹配 f oo d” 中的 o”, 匹配 bob” 中的 o” X+ X 重复 1 次或多次, 等价 X {1,} 如: zo + 匹配 zo ” ,“ zoo ”, 但不 匹配 z” X* X 重复 0 次或多次, 等价 X {0,} 如: zo * 匹配 zo ” ,“ zoo ”, ” z X? X 字符可选, X 重复 0 次或 1 次, 等价 X{0,1} 如: colou ? r’ 匹配 color ,” colour X 可为单个字符或 通过小括号包含的子模式 为一个整
Image of page 21
匹配算法: 贪婪 匹配算法 P ython 重复限 定符, 默认 采用 贪婪 匹配算法 贪婪 匹配算法 是指 重复限 定符 会导致 正则表达式引 多( leftmost or largest) 地匹配要 重复 前导 字符,只有 种重复 整个正则表达式匹 失败 情况 下,引 擎会 进行回 尝试稍 短的匹配) >>> re.findall(r'o{2,}[dt]', 'foooood fooooob foooot') ['oooood', 'oooot'] >>>re.findall('<. + >','< book><title>Python</title><author>Dong</author></book >') ['<book><title>Python</title><author>Dong</author></book>'] 贪婪 算法返回了一个最长匹配 我们期望 样匹配 XML 的开始与结 束标签
Image of page 22
匹配算法: 懒惰 匹配算法 如果在 重复限 定符后面加后 缀” ? ,表示使 懒惰 匹配算法 懒惰 匹配算法 是指正则表达式引 地进行 重复 匹配,只有 种重复 整个正则表达式 匹配 失败 情况 下,引 进行回 符号 说明 *? 重复任意 次, 但尽 重复 +? 重复 1 次或 多次, 但尽 重复 ?? 重复 0 次或 1 次, 但尽 重复 {n,m}? 重复 n m 次, 但尽 重复 {n,}?
Image of page 23
Image of page 24

You've reached the end of your free preview.

Want to read all 37 pages?

  • Fall '19

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture

  • Left Quote Icon

    Student Picture