私はディレクトリ仕様を含むperlの文字列を持っています。文字列に、日付マスクを構成する部分文字列の個体または組み合わせが含まれている場合は、その部分文字列を抽出します。たとえば、ディレクトリの仕様は次のようになります。Perlで日付マスクを抽出する正規表現とは何ですか?
/mydir/data/YYYYMMDD
"YYYYMMDD"文字列を抽出できます。しかし、パスのその部分は、以下の文字列のいずれかの個人または組み合わせが考えられます。
YY
YYYY
MM
DD
だから、ディレクトリ仕様文字列が読むことができる:
/mydir/data/DD/data2
を、私は「DD」は、結果として返さたいです正規表現の比較の。これらの日付マスク文字列のうちの1つ以上を含む必要があり、その文字列が2つの "/"文字の間にあるか、文字列の最後に存在する必要がある場合、文字列をキャプチャするにはどうすればよいですか?
「YY」、「DD」などのリテラル文字、または日付を表す数字と一致させることを意味しますか? – TLP
@TLP良い質問です!私の解決策は数字で動作しますが、GregHが望むものではないかもしれません。 – choroba
私は完全ではない解決策を削除したので、ここでは「ヒント」 - m {/((YYYY | YY | MM | DD){1、})/} 'は近づいていますが、また、 "YYYY/MM /"のようなケースではないと思います。しかし、多分役に立つ。 – BRFennPocock