正規表現
常人には読み解け無い(致命的なミスをしやすい)ので補助ツールを使って理解するのが良い
補助ツール
図でどういうフローと構造になるのか見せてくれるツール
一文字一文字どういった意味なのか解説してくれるツール
パターンマッチがどういう文字に一致するか簡単にテストできる
同上
>A repeated capturing group will only capture the last iteration. Put a capturing group around the repeated group to capture all iterations or use a non-capturing group instead if you're not interested in the data
などの典型的ないミスへのアドバイスが出てきて助かる
全文マッチ
[\s\S]
non-capturing group
(?:)
マッチした部分を記憶させることなく部分文字列にマッチさせたい場合は、その括弧においてパターンの前に ?: をつけてください。例えば (?:\d+) は 1 文字以上の数字にマッチしますが、マッチした文字列は記憶しません。
greedy match
@mootastic: 正規表現で "," "." "-" のいずれかにマッチしたいときは本来 -., と書くべきだが (途中に-を書くと範囲指定になってしまうので)、実は ,-. と書いてもバグではない。なぜなら...この3文字はASCIIでまさにこの順序で並んでおり、ちょうど"-"が中間の文字コードだから!