1

次のような文字列があります。

#CI[20131229]CO[20131231]PV1,#CI[20130918]CO[20130919]PV3,#CI[20131009]CO[20131011]PV3,#CI[20131226]CO[20140103]PV4,#CI[20131226]CO[20140103]PV3

.... リストは同じ形式で続きます。形式は次のとおりです。

,# = entry seperator
CI[YYYYMMDD] = Check In Date
CO[YYYYMMDD] = Check Out Date
PVx = Room Number

チェックイン チェックアウト日を除いて、チェックインとチェックアウト内のすべての日付を取得し、次のような文字列に入れたい (上記の文字列の場合):

#20131230PV1,#20131010PV3,#20131227PV3,#20131228PV3,#20131229PV3,#20131230PV3,#20131231PV3,#20140101PV3,#20140102PV3

チェックイン日とチェックアウト日を別々に取得する必要がありましたが、これでうまくいきました:

bookcaldatesci.innerHTML = bookcaldates.innerHTML.replace(/CO[^\]]+\]/ig, "");
bookcaldatesci.innerHTML = bookcaldatesci.innerHTML.replace(/CI\[/ig, "");
bookcaldatesci.innerHTML = bookcaldatesci.innerHTML.replace(/\]/ig, "");
bookcaldatesco.innerHTML = bookcaldates.innerHTML.replace(/CI[^\]]+\]/g, "");
bookcaldatesco.innerHTML = bookcaldatesco.innerHTML.replace(/CO\[/ig, "");
bookcaldatesco.innerHTML = bookcaldatesco.innerHTML.replace(/\]/ig, "");
jQuery.noConflict();
$(bookcaldatesci.innerHTML).css({'background-image':'url("img/booked.jpg")','background-repeat':'no-repeat','background-position-y':'100%','background-size':'100% 50%'});
$(bookcaldatesco.innerHTML).css({'background-image':'url("img/booked.jpg")','background-repeat':'no-repeat','background-size':'100% 50%'});

しかし、日付範囲間の日付を合計するには、少し迷っています..

(私は答えを得ました: 確認するには、以下の私の答えを確認してください)

4

3 に答える 3

1

各チェックインとチェックアウトの間に日付の違いを実行し、その値を使用して for ループを実行する必要があります。したがって、for 1 をその値に、for 値をループ全体のチェックイン日付に追加するだけです。チェックイン チェックアウト日の各セットをナビゲートする最も簡単な方法は、正規表現または文字列値の検索に基づくループのいずれかを使用することです。

于 2013-09-15T16:33:49.570 に答える