Python 2.7では、この正規表現は何に一致しますか?
^[!-//-~]
http://docs.python.org/2/library/re.htmlがそれをカバーしていないので、良い情報源はありますか?
Python 2.7では、この正規表現は何に一致しますか?
^[!-//-~]
http://docs.python.org/2/library/re.htmlがそれをカバーしていないので、良い情報源はありますか?
これ^は「文字列の開始」アンカーであり、式は開始時にのみ一致します。
ブロックは[...]文字クラスであり、含まれている文字はセットとして扱われます。行の先頭にあるこれらの1つは、一致を構成するのに十分です。
クラス内のダッシュは、から!まで、/およびからまでの範囲を構成/し~ます。最初の範囲の終わりが2番目の範囲の始まりと重なっているので、[!-~]十分です。
!との間に、スペース文字を~除くすべての印刷可能なASCII文字があります。スラッシュは数字の/直前にあります。誰かがリファクタリング後に2つのセットをマージするのを忘れたように見えます。
したがって、次の行のいずれかが一致します。
!whatever
"don't care
~still doesn't matter what follows
/It's the first character that counts.
ABut almost anything printable in the ASCII range matches