だから私はこのようなエントリのうち、時間、分、秒を取得する必要があります:正規表現での時間/分/秒のマッチング - より良い方法ですか?
- 4時43分12秒
- 9.43.12
- 1時
- 01.04
最初の2つは時間、分、秒です。 次へは分と秒です。 最後の2つはほんの数秒です。
そして、私はそれが動作しますが、この正規表現を思い付いた..:
\A(?<hours>\d{1,2})(?::|\.)(?<minutes>\d{1,2})(?::|\.)(?<seconds>\d{1,2})\z|\A(?<minutes>\d{1,2})(?::|\.)(?<seconds>\d{1,2})\z|\A(?<seconds>\d{1,2})\z
しかし、それは醜いです、と私は3種類の表情(主にちょうど学ぶため)ことがないようにそれをリファクタリングしたいと思います。
\A(?:(?<hours>\d{1,2})(?::|\.){0,1})(?:(?<minutes>\d{1,2})(?::|\.){0,1})(?:(?<seconds>\d{1,2}){0,1})\z
しかし、それは動作しません - 分と秒は時々めちゃくちゃます:私はこれを試してみました。私の脳は痛いし、私は何が間違っているのか分かりません。
これは言語に依存しません。正規表現の構文は、言語によって異なります。 –