0

いくつかの類似点があるディレクトリ内のファイル名を標準化しようとしていますが、常に一貫しているわけではありません。ただし、それらは十分に標準的です。

ファイル名の例 (日付は月/日/年):

  • 週間売上報告 022213 LV.xls
  • 週間売上報告 091908 LV-F.xls
  • 週間販売072508.xls
  • 週間米国販売 V1.0 061308.xls
  • 米国週間売上 Jan0606.xls

私の現在の解決策は、効果的ですが、可能な文字列の組み合わせの検索と置換です。x.gsub!(/^Weekly|sales|report|US|US|\s/,'')

ただし、ファイル名の文字列を見て、すべての日付情報を含むチャンクを取得する方法があると思います。これは、左側の空白で区切られたチャンクで、少なくとも 4 桁で終わります。これを達成する簡単な方法はありますか?

4

1 に答える 1

2

前述の要件は、次のことを示唆しています。

date_portion = x.match(/\s(\S*\d{4,8})/)[1]

つまり、1 つの空白文字に一致し、0 個以上の非空白文字をキャプチャし、その後に 4 ~ 8 桁が続きます。キャプチャしたテキストを返します。

于 2013-03-01T15:50:41.157 に答える