この形式の営業時間の文字列がたくさんあります。
Mon-Fri: AM7:00-PM8:00\nSat-Sun: AM8:00-PM6:00
「AM」の部分は削除するだけで対応できますが、PMは
- 「PM」を削除
- 「:」の前の数字に12を足す
- PM が 2 桁になる場合があることに注意する (例: PM11:00)
文字列には 0 個以上の PM 時刻を含めることができます。
時間を数値として操作する方法がわかりません。私はここまで来ました:
opening_hours.sub! /PM([\d]?[\d]):/, "***\1***"
次のようなものを出力します:
AM7:15-***\u0001***00
'\u0001` は、文字列内の日本語の文字が原因である可能性があります。