Pythonでは正規表現にはsub、search、findll、splitなどが使われます.
2684 ワード
1.原生文字列r
RE.search()は文字列全体をスキャンし、最初の成功マッチを返します.マッチング成功re.search方法は、一致するオブジェクトを返します.そうでなければ、Noneに戻ります.group(num)またはgroups()整合対象関数を使用してマッチ式の結果を得ることができます.
関数文法:re.search(pattern、string、flags=0)patternは正則で、string文字列、flagsは修繕符です.
正規表現にマッチするすべてのサブストリングを文字列で見つけ、一致するものが見つからない場合は、空のリストを返します.注意: matchとsearchは全てのフィットにマッチします.
構文形式は:findll(string[,pos[,endpos]]) pattern:正則におけるモード文字列. repl:置換された文字列は、関数としてもよい. string:置換元の文字列を検索します.
スプリットメソッドは、マッチできるサブストリングに従って文字列を分割してリストに戻ります.
その使い方は以下の通りです.re.split=1は一回に分けて、デフォルトは0で、回数は制限しません.
python r , 。
はほとんどのプログラミング言語と同じで、 "\"
は、バックスラッシュを引き起こす可能性があります.テキスト中の文字の「\」にマッチする必要がある場合、プログラミング言語で表現される正規表現には4つのバックスラッシュ「\」が必要になります.前の2つと後の2つはそれぞれプログラミング言語でバックスラッシュに変換され、2つのバックスラッシュに変換された後、正規表現でバックスラッシュに変換されます.# re
import re
vrgs = "c:\\a\\b\\c"
print(vrgs) #c:\a\b\c python print , \ 。
ret = re.match("c:\\\\",vrgs).group()
print(ret) #c:\, ret=c:\\
ret = re.match(r"c:\\a",vrgs).group() # r
print(ret) #c:\a
2.re.search整合関数の使用RE.search()は文字列全体をスキャンし、最初の成功マッチを返します.マッチング成功re.search方法は、一致するオブジェクトを返します.そうでなければ、Noneに戻ります.group(num)またはgroups()整合対象関数を使用してマッチ式の結果を得ることができます.
関数文法:re.search(pattern、string、flags=0)patternは正則で、string文字列、flagsは修繕符です.
# re
import re
ret = re.search(r"\d+", " :18434 334343 ") #
print(ret.group()) #18434
ret = re.search("[A-Za-z0-9]{2,8}"," a2Z ")
print(ret.group()) #a2Z
3.findllマッチング関数使用正規表現にマッチするすべてのサブストリングを文字列で見つけ、一致するものが見つからない場合は、空のリストを返します.注意: matchとsearchは全てのフィットにマッチします.
構文形式は:findll(string[,pos[,endpos]])
# re
import re
ret = re.findall(r"[A-Za-z]", " aDFD23 , 13BB34 , zdfasd ")
print(ret)
'''
['a', 'D', 'F', 'D', 'B', 'B', 'z', 'd', 'f', 'a', 's', 'd']
'''
4.sub関数の使用:マッチングしたデータを置換する :re.sub(pattern, repl, string, count=0),
# re
import re
ret = re.sub(r"\d+", '999999', " :143434 ")
print(ret) # :999999
ret = re.sub(r"bb","AA"," bb , bb , bb",2) # 2
print(ret) # AA , AA , bb
=============sub ============================================
def sumNum(temp):
strNum = temp.group()
sumNum = int(strNum)+100
return str(sumNum)
ret = re.sub(r"\d+", sumNum, "A=100,B=200,C=300")
print(ret) #A=200,B=300,C=400
5.スプリット関数使用スプリットメソッドは、マッチできるサブストリングに従って文字列を分割してリストに戻ります.
その使い方は以下の通りです.re.split=1は一回に分けて、デフォルトは0で、回数は制限しません.
import re
ret = re.split(r":| "," : 33 : ")
print(ret) #[' ', ' ', '33', ' : ']
共同声明:オリジナルブログの内容については、インターネットからの参考となる部分があります.オリジナルリンクが見つからなかったら、ここで権利侵害があったら削除してください.ブログの転載については、オリジナルリンクがあれば声明します.オリジナルリンクが見つからなかったら、ここで権利侵害があったら削除してください.