TIL 5|正規表現


正規表現


複雑な文字列の判断に使用
Pythonは、正規表現を表示できる内蔵ライブラリreモジュールを提供しています.
import re
re.match()
1.正規文法
  • メタ文字|:特定の文字列に指定された任意の文字列(文字)=orを含む[]:文字列セット、[]に対応する文字と一致():複数のパターンを組み合わせることができます-:[]内では-を使用して2文字の範囲を作成できます([From-to]).:改行(n)以外のすべての文字*:*前の文字を0回以上繰り返す+:+前の文字を1回以上繰り返す{m}:{m}前の文字m回繰り返し{m, n}:{m, n}前の文字m~n回繰り返す?:?の文字数が0または1={0, 1}^:文字列または行の先頭$:文字列または行の最後
  • 2.検索文字列
    メソッドターゲットマッチング(「モード」>「文字列」)の開始部分で、一致しない文字列に一致する正規表現があるかどうかを検索すると、Noneは文字列全体(「モード」>「文字列」)に一致する正規表現があるかどうかを返し、Finall(「モード」>「文字列」)は文字列に重複しないモードのすべてのマッチングを文字列リストFindierに返します.(「パターン」>「文字列」)文字列に重複しないパターンをウィジェットに返す
    指定객체 = re.compile('정규표현식')が重複する正規表現を記述するのを減らすことができます
    3.文字クラス
    文字クラスASCIId[0-9]すべての数字d[^0-9]を除くすべての数字w[a-zA-z 0-9]英語大文字小文字、数字、下線W[^a-zA-Z 0-9]英語大文字小文字、数字、下線以外のすべての文字
    👇ブランク処理
    文字クラスASCIIs[tnrv]スペース、t(tap)、n
    4.Matchオブジェクトの方法
    メソッドは、グループ()に一致する文字列を返し、グループ()に一致する文字列をTupleに返し、start()は一致する文字列の開始位置を返し、end()は一致する文字列の終了位置を返し、span()は一致する文字列に対応する(開始、終了)Tupleを返す
    ✨Grouping()でグループ化可能
    👇例
    indexでグループをインポートできます.
    0または何も指定しない場合は、一致する文字列が返されます.(?P<group<그룹이름>패턴)を使用してグループに名前を付け、インポートしやすい
    正規表現では(?P=그룹이름)で再参照できます.
    5. Compile Option
    import re
    p = re.compile('패턴', 'Compile Option')
  • DOTALL,S:改行(n)を含むオプション
  • IGNORECASE,I:大文字と小文字を含むオプション
  • MULTILINE,M:各行に対応するパターンのオプション(^,$関連)
  • VERBOSE,X:一般式にコメントを含めることを許可するオプション