我收到了更改請求,我不確定如何最好地處理它。如果客戶搜索某物,並且他們指定的年份或年份範圍大於我們在數據庫中的範圍,則必須返回與我們擁有的最新年份範圍相對應的結果。如何解析字符串以提取年份範圍值?
目前我們已經在數據庫中的所有結果遵循以下模式之一:
Thing1 Thing2 S1 // There's some results with no year
Thing1 Thing2 2006-07 Series 6 // there's some results with 'Series X'
Thing1 Thing2 2006-2007 S12 RP // some resuls have SN or SN YZ
Thing1 Thing2 2020-21 S6 // some results don't have a full second year
Thing1 Thing2 2022-2024 S12
Thing1 Thing2 2024 Onwards // the result that matches the final year just has the year & 'Onwards'
有用於Thing1 Thing2更多結果可在世界上,馬上要到2060年,但我們只保留+14因爲在14年後(比如2026年或2028年),這些數據與之前的年份完全一樣。
我們有最大的一年,在每2年2年所有腦幹增加最大的一年。因此,在2012年,我們將有Thing1 Thing2 2026起,最大的存在將是2062年。
所以基本上,我需要確定客戶端何時搜索[Thing1(或)Thing2與一年範圍],如果第一年的值大於[今年+ 14]我要回到[今年+ 14],但前提是當前年份是偶數年,否則我必須返回[今年+ 13]。
我遇到的麻煩是如何確定不遵循一個明確的模式,比年初範圍的第一部分以外的字符串中間一年有4位數的年份開始。
什麼是我去這個最好的方法是什麼?有人可以建議我如何解決這個問題?謝謝。