Day15-Python-正則表達式-2018/8/3

正則表達式的符號

  • 正則表達式:用來做字符串查找、匹配、切割用的一種工具()

python對正則表達式的支持:提供了re模塊(python內(nèi)置模塊),包含字符串匹配、查找、切割等相關(guān)方法
fullmatch(正則表達式,需要匹配的字符串):用正則表達式來和字符串進行匹配,看是否能夠匹配成功
正則表達式:是一個符合正則規(guī)范的字符串

import re

if __name__ == '__main__':

注意:正則表達式的字符串,前面要加r來阻止轉(zhuǎn)義,因為正則表達式的符號中有很多帶'\'的符號,其功能不是轉(zhuǎn)義,而是表示特殊的意義

1.. :匹配一個任意的字符

 """匹配了兩個任意字符的字符串"""
    re_str = r'..'
    """匹配第一個字符是a第二個字符是b的字符串"""
    re_str = r'ab'
    """匹配第一格字符是a第二格字符是任意字符的字符串"""
    re_str = r'a.'
    print(re.fullmatch(re_str,'ab'))

2. \w :匹配一個字符是字母、數(shù)字或者下劃線

"""匹配第一個字符是字母、數(shù)字或者下劃線,第二個字符還是字母、數(shù)字或者下劃線的字符串"""
    re_str = r'\w\w'
    print(re.fullmatch(re_str,'_9'))

    re_str = r'\w.\w'
    print(re.fullmatch(re_str,'_-_'))

3. \s: 匹配一個空白字符(空格,換行,制表符)

    """匹配第一個字符是a,第二個字符是空白,最后一個字符是b的字符串"""
    re_str = r'a\sb'
    print(re.fullmatch(re_str,'a\nb'))

4. \d 匹配一個數(shù)字字符

re_str = r'\d\d\d'
    print(re.fullmatch(re_str,'123'))
    """匹配第一個字符是0,后面兩個字符都是數(shù)字的字符串"""
    re_str = r'0\d\d'
    print((re.fullmatch(re_str,'019')))

5. \b 檢測邊界(單詞邊界---一般的符號都可以作為單詞邊界)

"""檢測三個任意字符的前面和后面都是單詞邊界的字符串"""
    re_str = r'\b...\b'
    print(re.match(re_str,'鳥鳥鳥,你好'))

6. ^ 匹配字符串開始(^The --- 匹配以The開頭的字符串)

re_str = r'^The'
    print(re.fullmatch(re_str,'The'))
    print(re.findall(r'^The','aThe789abc jThe9898ki'))

7. $ 匹配字符串結(jié)束

re_str = r'abc$'
    print(re.findall(re_str,'abc'))
    print(re.findall(re_str,'jkdjakdjakjsabc-'))

8. \W 匹配非字母、數(shù)字、下劃線

    re_str = r'\W\w'
    print(re.fullmatch(re_str,'&k'))
    print(re.match(re_str,'*ksdsa'))

9. \S 匹配非空白字符

    re_str = r'\S\d'
    print(re.fullmatch(re_str,'11'))
    print(re.match(re_str,'a2 1')) # match 必須從字符串開頭就開始匹配,否則None

10. \D 匹配非數(shù)字字符

    """匹配第一個字符是非數(shù)字字符,第二格字符是數(shù)字、字母、下劃線"""
    re_str = r'\D\w'

11. \B 檢測非邊界

    """匹配前面兩個字符是a和b,第三個字符是c,并且b的后面是一個非邊界"""
    re_str = r'ab\Bc'
    print(re.fullmatch(re_str,'abc'))
    print(re.match(re_str,'abc0'))


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 對于初戀,我很懵懂,那很美好,也很懷念。 現(xiàn)在,剛好有一段感情在我的生活里搖曳。對方是個醫(yī)生。我以前對于醫(yī)生這個職...
    樊女士閱讀 1,022評論 0 1
  • Peopledon't buy what you do ,they buy why you do it
    書影隨行閱讀 1,014評論 0 1
  • 行業(yè)發(fā)展面臨的問題 目前出境自助游細分市場正在蓬勃發(fā)展,行業(yè)內(nèi)不僅有攜程、途牛等大型OTA廠商布局已久,同時也有玩...
    一銘_YiMi閱讀 667評論 0 0
  • 今天我和佳卿擁抱了十幾次,我倆感覺都很好。我們會一直這樣享受在彼此擁抱的每一天。 我愛佳卿。 每一天,我和佳甫會有...
    hiwanda閱讀 471評論 0 0

友情鏈接更多精彩內(nèi)容