您如何在vbscript中匹配多个模式?

Set regEx = New RegExp

regEx.Pattern = "[?&]cat=[\w-]+" & "[?&]subcat=[\w-]+" // tried this
regEx.Pattern = "([?&]cat=[\w-]+)([?&]subcat=[\w-]+)" // and this

param = regEx.Replace(param, "")


我想什么都不要替换名为param的字符串中任何名为cat或subcat的参数。

例如

string?cat=meow&subcat=purr or string?cat=meow&dog=bark&subcat=purr


我想从每个字符串中删除cat = meow和subcat = purr。

最佳答案

通常,正则表达式中的OR是管道:

[?&]cat=[\w-]+|[?&]subcat=[\w-]+


在这种情况下,这也将起作用:将sub设为可选:

[?&](sub)?cat=[\w-]+


另一种选择是在非共享部分上使用或:

[?&](cat|dog|bird)=[\w-]+

10-08 10:56