日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

正则表达式的元素符

發(fā)布時間:2023/12/20 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 正则表达式的元素符 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
import reprint("----------匹配單個字符與數(shù)字----------") r''' . 匹配除換行符以外的任意字符 [0123456789] []是字符集合,表示匹配方括號中所有所包含的任意一個字符 [liuwang] [] 匹配‘l','i','u' 中任意一個字符 [a-z] 匹配任意小寫字母 [A-Z] 匹配任意大寫字母 [0-9] 匹配任意數(shù)字,類似[0123456789] [0-9a-zA-Z] 匹配任意的數(shù)字和字母 [0-9a-zA-Z_] 匹配任意的數(shù)字、字母和下劃線 [^liuwang] 匹配除了l,i,u,w,a,n,g這幾個字母意外的所有字符 中括號中了 ^稱為脫字符 表示不匹配集合中的字符 [^0-9] 匹配所有的非數(shù)字字符 有 ^ 需要帶[] \d 匹配數(shù)字,效果同[0-9] \D 匹配非數(shù)字,效果同[^0-9] \w 匹配數(shù)字,字母和下劃線,效果同[0-9a-zA-Z_] \W 匹配非數(shù)字,字母和下劃線,效果同[^0-9a-zA-Z_] \s 匹配任意的空白符(空格,換行,回車,換頁,制表)效果同[ \f\n\r\t] \S 匹配任意的非空白符效果同[^ \f\n\r\t]''' # print(re.findall("\D","liuwang is handsome6"))print("----------------錨字符--------------") ''' ^ 行首匹配,和在[]里的^不是一個意思 $ 行尾匹配 \A 匹配字符串開始,它和^的區(qū)別是,\A 只匹配整個字符串的開頭,即使在re.M模式下也不會匹配它行的行首 \Z 匹配字符串結(jié)束,他和$的區(qū)別是,\Z 只匹配整個字符串的開頭,即使在re.M模式下也不會匹配它行的行尾\b 匹配一個單詞的邊界,也就是值單詞和空格鍵的位置,可以匹配never 不能匹配nerve \B 匹配非單詞的邊界,'''# print(re.search("some","liuwang is handesome")) # print(re.findall("^liu","liuwang is handesome\nliuwang",re.M)) # print(re.findall("\Aliu","liuwang is handesome\nliuwang",re.M)) # # # print(re.search(r"er\b","nerve")) # print(re.search(r"er\b","nnnever")) # print(re.search(r"er\B","nnnevre")) # print(re.search("er\B","nerve"))print("----------------匹配多個字符--------------") ''' 說明:下方的x、y、z 均為假設(shè)的普通字符,不是正則表達式的元字符 (xyz) 匹配小括號內(nèi)的xyz (作為一個整體去匹配) x? 匹配0個或者1個x #非貪婪匹配 x* 匹配0個或者多個x #貪婪匹配 (.* 表示匹配0個或者任意多個字符(換行符除外)) x+ 匹配至少一個x #貪婪匹配x{n} 匹配確定的n個x(n是一個非負整數(shù)) x{n,} 匹配至少n個x x{n,m} 匹配至少n個最多m個x,注意:n<=m x|y |表示或 匹配x或者y ''' print(re.findall(r"a?", "aaa"))#非貪婪匹配(盡可能少的匹配) print(re.findall(r"a*", "aaabaa"))#貪婪匹配(盡可能多的匹配) print(re.findall(r"a+", "aaabaaaaaa"))#貪婪匹配(盡可能多的匹配) print(re.findall(r"a{3}", "aaabaa")) print(re.findall(r"a{3,}", "aaaaabaaa"))#貪婪匹配(盡可能多的匹配) print(re.findall(r"a{3,6}", "aaaabaaa")) print(re.findall(r"((s|S)unck)", "sunck--SuNck"))#需求,提取sunck...man str = " sunck is a good man ! sunck is a nice man!sunck is a very handesome man" print(re.findall(r"(sunck.*?man$)",str))print("-------------特殊---------------") ''' *? +? ??最小匹配 通常都是盡可能多的模式,可以使用這種解決貪婪匹配(?:x) 類似(xyz)但不表示一個組 ''' #注釋/* part1 */ */ part2 */ print(re.findall(r"//*.*/*/",r"/* part1 */ */ part2 */"))

?

總結(jié)

以上是生活随笔為你收集整理的正则表达式的元素符的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。