case1: provide: "^X" request: "+X" result: true case2: provide: "^X" request: "*" result: true case3: provide: "^X" request: "+Y" result: false case4: provide: "^X" request: "-X" result: false