pythonRegex(3)--match方法

來源:互聯網
上載者:User

標籤:com   pos   div   一個   參數說明   string   方法   style   正則表達   

1.re.match函數

re.match 嘗試從字串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match()就返回none。

(1)函數文法
 re.match(pattern, string, flags=0)
  函數參數說明:

      pattern   匹配的Regex

         string      要匹配的字串

      flgs         標誌位,用於控制Regex的匹配方式

  我們可以使用group(num) 或 groups() 匹配對象函數來擷取匹配運算式。

    group(num=0)   擷取匹配結果的各個分組的字串,group() 可以一次輸入多個組號,此時返回一個包含那些組所對應值的元組。

    groups()            返回一個包含所有分組字串的元組。

    注意:如果未匹配成功,match()傳回值為None,此時再使用group()、groups()  方法會報錯。

         應該先擷取匹配對象,然後判斷匹配對象是否非空,當非空時在使用group()、groups()  方法擷取匹配結果。見執行個體2

(2)執行個體    例1    import re
    print(re.match(‘How‘, ‘How are you‘).span())   # 在起始位置匹配
    print(re.match(‘are‘, ‘How are you‘))                # 不在起始位置匹配

    以上輸出結果為:

  (0, 3)  None
    例2  import re  content = ‘577 zeke‘  result = re.match(r‘[a-z]\d‘ , content‘)  if result:    print result.group()  else:    print ‘No match!‘

  以上執行結果如下:

  No match!

2.pattern.match方法(1) 函數文法

  pattern.match( string, pos=0, endpos=len(string))

  函數作用:

    這個方法將在字串string的pos位置開始 嘗試匹配pattern(pattern就是通過 re.compile()方法編譯後返回的對象),如 果pattern匹配成功,無論是否達到結束位 置endpos,都會返回一個匹配成功後的 Match對象;

    如果匹配不成功,或者 pattern未匹配結束就達到endpos,則返回 None。

  函數參數說明:

    string:被匹配的字串 

    pos:匹配的起始位置,可選,預設為0

    endpos:匹配的結束位置,可選,預設為 len(string)

3. re.match和pattern.match區別

  re.match方法與pattern.match()方法 區別在於,它不能指定匹配的區 間pos和endpos兩個參數

 

pythonRegex(3)--match方法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.