Fw: [問題] 給字串找出第一個符合的glob
看板Prob_Solve (計算數學 Problem Solving)作者danny0838 (道可道非常道)時間7年前 (2017/09/23 08:07)推噓3(3推 0噓 6→)留言9則, 3人參與討論串1/1
※ [本文轉錄自 Programming 看板 #1PnIAqkY ]
作者: danny0838 (道可道非常道) 看板: Programming
標題: [問題] 給字串找出第一個符合的glob
時間: Fri Sep 22 22:48:18 2017
如題,假設資料庫有這樣的鍵-值對:
{
"www.google.com": function A(){},
"*.example.com.*": function B(){},
"*.example.*": function C(){},
"www.*.com.*": function D(){},
"*.mycompany.*.com.*": function E(){},
...
}
語言是用 javascript。
現在希望對於任意給定的字串,
找出第一個符合的鍵執行對應的function。
例如給 "foo.example.com.tw" 要執行 function B
如果鍵是純字串,做起來很簡單,一個 Map 就解決,
但問題是現在的鍵可能是 glob pattern...
我知道可以用暴力法,
意即依序把每個鍵拿去和給定字串比對,
不過資料庫大起來效能會較差,
想知道是否有時間複雜度較低的演算法可用?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.19.182
※ 文章網址: https://www.ptt.cc/bbs/Programming/M.1506091700.A.BA2.html
※ 編輯: danny0838 (1.164.19.182), 09/22/2017 22:51:54
推
09/22 23:03, , 1F
09/22 23:03, 1F
→
09/23 00:03, , 2F
09/23 00:03, 2F
推
09/23 00:13, , 3F
09/23 00:13, 3F
設計上是有按順序,如果 B 符合了就不執行 C。
※ 編輯: danny0838 (1.164.19.182), 09/23/2017 01:03:59
推
09/23 06:21, , 4F
09/23 06:21, 4F
→
09/23 06:21, , 5F
09/23 06:21, 5F
→
09/23 06:21, , 6F
09/23 06:21, 6F
→
09/23 06:21, , 7F
09/23 06:21, 7F
→
09/23 06:21, , 8F
09/23 06:21, 8F
→
09/23 06:21, , 9F
09/23 06:21, 9F
→
09/23 06:21, , 10F
09/23 06:21, 10F
→
09/23 06:21, , 11F
09/23 06:21, 11F
→
09/23 06:21, , 12F
09/23 06:21, 12F
→
09/23 06:21, , 13F
09/23 06:21, 13F
→
09/23 06:21, , 14F
09/23 06:21, 14F
→
09/23 06:21, , 15F
09/23 06:21, 15F
※ 發信站: 批踢踢實業坊(ptt.cc)
※ 轉錄者: danny0838 (36.227.221.89), 09/23/2017 08:07:57
推
09/23 11:41, , 16F
09/23 11:41, 16F
推
09/24 00:38, , 17F
09/24 00:38, 17F
→
09/24 00:38, , 18F
09/24 00:38, 18F
→
09/24 00:39, , 19F
09/24 00:39, 19F
推
09/28 19:37, , 20F
09/28 19:37, 20F
→
09/30 13:08, , 21F
09/30 13:08, 21F
→
09/30 13:11, , 22F
09/30 13:11, 22F
→
09/30 13:13, , 23F
09/30 13:13, 23F
→
09/30 13:20, , 24F
09/30 13:20, 24F
Prob_Solve 近期熱門文章
PTT數位生活區 即時熱門文章