前々回の記事「Python re.match関数とは、Python match関数の使い方を理解する」と「PythonでのPython re.searchメソッドの詳細解説」では、matchモジュールとsearchモジュールについて紹介しました。 Python の Re モジュールのこの記事は、re.search と re.match
re.search## とは何ですか? の違いを説明する前の 2 つの記事にリンクされています。 #:
記事「Pythonにおけるpython re.searchメソッドの詳細解説」を参照してください。
re.match とは:
記事を参照してください:「Python re.match 関数とは何か、Python match 関数の使用法を理解する」 。
それでは、re.searchとre.matchの違いは何でしょうか? つまり、re.match は文字列の先頭のみに一致します。文字列の先頭が正規表現と一致しない場合、一致は失敗し、関数は None を返します。一方、re.search は一致します。一致する
インスタンスが見つかるまで、文字列全体を返します:
#!/usr/bin/python import re line = "Cats are smarter than dogs"; matchObj = re.match( r'dogs', line, re.M|re.I) if matchObj: print "match --> matchObj.group() : ", matchObj.group() else: print "No match!!" matchObj = re.search( r'dogs', line, re.M|re.I) if matchObj: print "search --> matchObj.group() : ", matchObj.group() else: print "No match!!"
上記の例の結果は次のとおりです:
No match!! search --> matchObj.group() : dogs
以上がPython Re モジュールの re.search と re.match の違いの簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。