我正在检查 URL 中的一个非常特定的模式,以便仅在正确类型的页面上执行一组代码。目前,我有类似的东西:
/^http:\/\/www\.example\.com\/(?:example\/[^\/]+\/?)?$/;
所以,它会true
返回example.com
and example.com/example/anythinghere/
。但是,有时该网站会在 URL 的末尾附加诸如?postCount=25
或之类的参数,因此您会得到:
example.com/example/anythinghere/?postCount=25
因此,如果我将当前表达式放入条件表达式中,如果有 URL 参数,它将返回 false。我将如何最好地更改正则表达式以允许可选的URL 参数通配符,这样,如果有一个问号后跟任何其他信息,它将始终返回 true,如果省略,它仍然会返回 true ?
对于以下情况,它需要返回 true:
http://www.example.com/?argumentshere
和
http://www.example.com/example/anythinghere/?argumentshere
以及那些没有额外参数的相同 URL。