国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python 正則表達式操作指南

2020-02-23 04:45:12
字體:
來源:轉載
供稿:網友
原文作者:A.M. Kuchling (amk@amk.ca)
授權許可:創作共享協議
翻譯人員:FireHare
校對人員:Leal
適用版本:Python 1.5 及后續版本
http://wiki.ubuntu.org.cn/Python%E6%AD%A3%E5%88%99%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97#.E7.BC.96.E8.AF.91.E6.AD.A3.E5.88.99.E8.A1.A8.E8.BE.BE.E5.BC.8F
目錄


目錄

[隱藏]
  • 1 簡介
  • 2 簡單模式
  • 2.1 字符匹配
  • 2.2 重復
  • 3 使用正則表達式
  • 3.1 編譯正則表達式
  • 3.2 反斜杠的麻煩
  • 3.3 執行匹配
  • 3.4 模塊級函數
  • 3.5 編譯標志
  • 4 更多模式功能
  • 4.1 更多的元字符
  • 4.2 分組
  • 4.3 無捕獲組和命名組
  • 4.4 前向界定符
  • 5 修改字符串
  • 5.1 將字符串分片
  • 5.2 搜索和替換
  • 6 常見問題
  • 6.1 使用字符串方式
  • 6.2 match() vs search()
  • 6.3 貪婪 vs 不貪婪
  • 6.4 不用 re.VERBOSE
  • 7 反饋
  • 8 關于本文檔
  • [編輯] 簡介

    Python 自1.5版本起增加了re 模塊,它提供 Perl 風格的正則表達式模式。Python 1.5之前版本則是通過 regex 模塊提供 Emacs 風格的模式。Emacs 風格模式可讀性稍差些,而且功能也不強,因此編寫新代碼時盡量不要再使用 regex 模塊,當然偶爾你還是可能在老代碼里發現其蹤影。


    就其本質而言,正則表達式(或 RE)是一種小型的、高度專業化的編程語言,(在Python中)它內嵌在Python中,并通過 re 模塊實現。使用這個小型語言,你可以為想要匹配的相應字符串集指定規則;該字符串集可能包含英文語句、e-mail地址、TeX命令或任何你想搞定的東西。然后你可以問諸如“這個字符串匹配該模式嗎?”或“在這個字符串中是否有部分匹配該模式呢?”。你也可以使用 RE 以各種方式來修改或分割字符串。


    正則表達式模式被編譯成一系列的字節碼,然后由用 C 編寫的匹配引擎執行。在高級用法中,也許還要仔細留意引擎是如何執行給定 RE ,如何以特定方式編寫 RE 以令生產的字節碼運行速度更快。本文并不涉及優化,因為那要求你已充分掌握了匹配引擎的內部機制。哈哈

    正則表達式語言相對小型和受限(功能有限),因此并非所有字符串處理都能用正則表達式完成。當然也有些任務可以用正則表達式完成,不過最終表達式會變得異常復雜。碰到這些情形時,編寫 Python 代碼進行處理可能反而更好;盡管 Python 代碼比一個精巧的正則表達式要慢些,但它更易理解。

    發表評論 共有條評論
    用戶名: 密碼:
    驗證碼: 匿名發表
    主站蜘蛛池模板: 重庆市| 平和县| 上饶县| 邵东县| 特克斯县| 泉州市| 潜山县| 扶风县| 嘉峪关市| 津市市| 化德县| 全椒县| 井陉县| 孝义市| 专栏| 墨江| 宜良县| 长岛县| 曲阳县| 保山市| 连州市| 沾化县| 保亭| 临沂市| 兴城市| 康马县| 卓资县| 正定县| 鹤峰县| 渭源县| 北辰区| 青岛市| 吕梁市| 高淳县| 大庆市| 本溪| 尚志市| 梧州市| 商洛市| 寻甸| 岑巩县|