Pythonは、従来のを使用してモジュールを再

方法.REモジュールを見つける:
  1.findall整合素子それぞれがすべてのリストであります
再インポート
RETは( '\ + D'、 '21313 ASDルバニ7')#正規表現の文字列をre.findallを=フラグでは、一致する
#1 RET = re.findall( '\のD'、「第七ASDルバニ21313「)旗の中の文字列を一致させる#正規表現、
#印刷(RET)

  結果は、直接ではなく、むしろ可変まで2.searchだけ、右にこの変数グループの結果を得るための方法を第1の左と一致します

インポート
RET = re.search(' \ + D '' ASDルバニ7 21313 ' プリント(RET)   #1 陽性結果の一致であるメモリアドレス、
印刷(ret.group())  ret.groupによって( )実際の結果を得るために
    2.1がある場合に一致、Noneを返しますが、グループを使用して文句を言うんだろう
= re.searchのRET(' \ + D '' ASDルバニVII ' プリント(ret.group())

     2.2だから今回は、私がどのような形式呼びたいです

= re.searchのRET(' \ + D '' ASDルバニVII ' IF RET:
      プリント(ret.group())

  3.matchスクラッチ一致、正規表現検索の同等プラス^

= re.match RET(' \ + D '' ルバニVIIは21313 1233asd ' プリント(RET)

 II。拡張文字列処理

   1.split--カッティング

S = " ルバニ|チェン| | ' 
印刷(s.split(' | ' )) = ' luban34cheng21an89 ' 
プリント(re.split(' \ dの+ "、S))

   2.sub--交換

K = re.sub(' \のD + '' H '' luban34cheng21an89 '、1 プリンタ(右)

   3.subnは、ニューロン前駆を返す第二要素の数が交換可能である返します

K = re.subn(' \のD + '' H '' luban34cheng21an89 ' プリンタ(右)

 高度な3 .REモジュール

   あなたは、複数の使用の過程では、バイトコードにコンパイルされた正規表現をコンパイルし、問題を解決するために、複数のないコンパイルを正規表現を使用し、時間を節約1.compile

= re.compileのRET(' \ + D '完全コンパイル
印刷(RET)
RES = ret.findall(' luban34cheng21an89 ' プリント(RES)
RES = ret.search(' 21313ルバニVIIを1233asd ' 印刷(RES .group())

   あなたが問題を解決するために正規表現を使用する省スペース2.finditer

ret = re.finditer('\d+','1233asd鲁班七号21313')
for i in ret:
    print(i.group())

 四.总结

findall   返回列表,找所有的匹配项
search 匹配就返回一个变量,通过group取匹配到的第一值,不匹配就返回None,group会报错
match 相当于search的正则表达式中加了一个'^'

split 返回列表,按照正则规则切割,默认匹配到的内容会被切掉
sub/subn 替换,按照正则规则去寻找要被替换的内容,subn返回元祖,第二个值是替换的次数

compile 编译一个正则表达式,用这个结果去search,match,fildall,finditer 能够节省时间
finditer 返回一个迭代器,所有的结果都在这个迭代器中,需要通过循环+group的形式取值 能够节省内存

おすすめ

転載: www.cnblogs.com/shagudi/p/10984338.html