私は、javascript正規表現の経験をPythonに移そうとしています。
私はこれを機能させようとしています:
print(re.match('e','test'))
...しかし、Noneは出力されます。私が行った場合:
print(re.match('e','est'))
一致します...デフォルトでは文字列の先頭に一致しますか?一致する場合、結果をどのように使用しますか?
最初の1つを一致させるにはどうすればよいですか? pythonサイトの提供よりも優れたドキュメントがありますか?
re.match
は、暗黙的に^
を正規表現の先頭に追加します。つまり、文字列の先頭でのみ一致します。
re.search
はすべての位置で再試行します。
一般的に言えば、re.search
を使用し、必要に応じて^
を明示的に追加することをお勧めします。
ドキュメントは明確だと思います。
re.match(pattern、string [、flags])¶
If zero or more characters **at the beginning of string** match the
正規表現パターン、対応するMatchObjectインスタンスを返します。文字列がパターンに一致しない場合はNoneを返します。これは、長さゼロの一致とは異なることに注意してください。