pythonRegex判斷字串是否是全部小寫樣本

來源:互聯網
上載者:User
複製代碼 代碼如下:


# -*- coding: cp936 -*-
import re
s1 = 'adkkdk'
s2 = 'abc123efg'

an = re.search('^[a-z]+$', s1)
if an:
print 's1:', an.group(), '全為小寫'
else:
print s1, "不全是小寫!"

an = re.match('[a-z]+$', s2)
if an:
print 's2:', an.group(), '全為小寫'
else:
print s2, "不全是小寫!"



1. Regex不是python的一部分,利用時需要引用re模組

2. 匹配的形式為: re.search(Regex, 帶匹配字串)或re.match(Regex, 帶匹配字串)。兩者區別在於後者預設以開始符(^)開始。因此,

re.search('^[a-z]+$', s1) 等價於 re.match('[a-z]+$', s2)
3. 如果匹配失敗,則an = re.search('^[a-z]+$', s1)返回None

group用於把匹配結果分組

複製代碼 代碼如下:


import re
a = "123abc456"
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(0) #123abc456,返回整體
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(1) #123
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(2) #abc
print re.search("([0-9]*)([a-z]*)([0-9]*)",a).group(3) #456

1)Regex中的三組括弧把匹配結果分成三組

group() 同group(0)就是匹配Regex整體結果

group(1) 列出第一個括弧匹配部分,group(2) 列出第二個括弧匹配部分,group(3) 列出第三個括弧匹配部分。

2)沒有匹配成功的,re.search()返回None

3)當然鄭則運算式中沒有括弧,group(1)肯定不對了。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.