<noframes id="rhdfr">
<address id="rhdfr"></address>

    <address id="rhdfr"><address id="rhdfr"><listing id="rhdfr"></listing></address></address>

    <form id="rhdfr"><nobr id="rhdfr"><meter id="rhdfr"></meter></nobr></form>

    400-650-7353
    您所在的位置:首頁 > IT干貨資料 > python > 【Python基礎知識】常用內建模塊-re

    【Python基礎知識】常用內建模塊-re

    • 發布: 優就業it培訓
    • 來源:
    • 2021-10-29 14:50:16
    • 閱讀()
    • 分享
    • 手機端入口

    編程語言中的正則表達式用于描述搜索模式的特殊文本字符串。這對于從文本(如代碼、日志、文檔、電子表格等)中提取信息非常有用。使用正則表達式時,首先要認識到的是,所有內容本質上都是一個字符。ASCII或拉丁字母是鍵盤上的字母,Unicode用于匹配外來文本,它包括數字和標點符號以及所有特殊字符,如$、#、@、!、%等。

    例如,正則表達式可以告訴程序從字符串中搜索特定文本,然后相應地打印出結果。正則表達式可以包括文字匹配、重復、分支、模式組成等。

    在Python中,正則表達式通過re模塊導入。元字符是具有特殊含義的字符,用來匹配特定文本。常用的元字符如表所示。

    re模塊中定義了一些函數,分別對應不同的匹配模式。

    findall()函數用于返回包含所有匹配項的字符串列表:

    1. >>> import re   # 導入re模塊,以下示例都將省略這行代碼 
    2. >>> s = 'hello 12 hi 89. How 34' 
    3. >>> pattern = '\d+'   # 匹配數字 
    4. >>> result = re.findall(pattern, s) 
    5. >>> print(result) 
    6. ['12''89''34'

    split()函數用于在存在匹配項的情況下拆分字符串,并返回發生拆分的字符串列表:

    1. >>> s = 'python:234, java 90'   # 將數字作為分隔符 
    2. >>> pattern = '\d+' 
    3. >>> result = re.split(pattern, s) 
    4. >>> print(result) 
    5. ['python:'', java '''

    如果不存在匹配項,那么split()函數返回一個包含空字符串的列表?梢詫axsplit參數傳遞給split()函數,maxsplit代表最大拆分次數:

    1. >>> s = 'python:234, java 90' 
    2. >>> pattern = '\d+' 
    3. >>> result = re.split(pattern, s, 1)   # 分割最大值是1,即拆成兩份 
    4. >>> print(result) 
    5. ['python:'', java 90'

    sub()函數用于返回一個字符串,其中匹配到的匹配項被替換變量的內容替換:

    1. >>> s = 'abc 12
    2. ... de 23 \n f45 6
    3. >>> pattern = '\s+'   # 匹配空白字符 
    4. >>> replace = ''   # 用空字符串替換匹配項 
    5. >>> new_string = re.sub(pattern, replace, s) 
    6. >>> print(new_string)  # 完成替換 
    7. abc12de23f456 

    如果不存在匹配項,那么sub()函數返回原始字符串。

    subn()函數與sub()函數類似,只不過subn()函數返回一個包含2個項的元組,其中包含新字符串和進行替換的次數:

    1. >>> s = 'abc 12
    2. ... de 23 \n f45 6
    3. >>> pattern = '\s+' 
    4. >>> replace = '' 
    5. >>> new_string = re.subn(pattern, replace, s) 
    6. >>> print(new_string) 
    7. ('abc12de23f456'4

    search()函數采用兩個參數,分別是匹配模式和字符串。該函數查找正則表達式模式與字符串匹配的第一個位置。如果匹配成功,那么search()函數返回一個match對象;否則返回None:

    1. >>> s = 'Python is fun' 
    2. >>> match = re.search('\APython', s)   # 檢查'Python'是否在開頭 
    3. >>> print(match)   # 返回一個對象 
    4. <_sre.SRE_Match object; span=(06), match='Python'

    上面的match變量包含著match對象,match對象的re屬性返回一個正則表達式對象,string屬性返回傳遞的字符串:

    1. >>> match.re 
    2. re.compile('\\APython'
    3. >>> match.string 
    4. 'Python is fun' 

     

    文章“【Python基礎知識】常用內建模塊-re”已幫助

    更多內容

    >>本文地址:http://www.hamptonsurfmovie.com/zhuanye/2021/70621.html

    THE END  

    聲明:本站稿件版權均屬中公教育優就業所有,未經許可不得擅自轉載。

    領取零基礎自學IT資源

    (內含學習路線+視頻教程+項目源碼)

    涉及Java、Web前端、UI設計、軟件測試、Python等多個IT熱門方向

    打開微信掃一掃即可領取哦~

    1 您的年齡

    2 您的學歷

    3 您更想做哪個方向的工作?

    獲取測試結果
    • 大前端大前端
    • 大數據大數據
    • 互聯網營銷互聯網營銷
    • JavaJava
    • Linux云計算Linux
    • Python+人工智能Python
    • 嵌入式物聯網嵌入式
    • 全域電商運營全域電商運營
    • 軟件測試軟件測試
    • 室內設計室內設計
    • 平面設計平面設計
    • 電商設計電商設計
    • 網頁設計網頁設計
    • 全鏈路UI/UE設計UI設計
    • VR/AR游戲開發VR/AR
    • 網絡安全網絡安全
    • 新媒體與短視頻運營新媒體
    • 直播帶貨直播帶貨
    • 智能機器人軟件開發智能機器人
     

    快速通道fast track

    近期開班時間TIME

    把她压在桌子上 蹂躏她的双乳

    <noframes id="rhdfr">
    <address id="rhdfr"></address>

      <address id="rhdfr"><address id="rhdfr"><listing id="rhdfr"></listing></address></address>

      <form id="rhdfr"><nobr id="rhdfr"><meter id="rhdfr"></meter></nobr></form>