我正在尝试提出一个正则表达式,它将优雅地匹配 URL 中的所有内容,在域名之后,第一个 ? 之前,最后一个斜杠或 URL 的结尾,如果两者都不存在。
这是我想出的,但在某些情况下似乎失败了:
regex = /[http|https]:\/\/.+?\/(.+)[?|\/|]$/
总之:
http://nytimes.com/2013/07/31/a-new-health-care-approach-dont-hide-the-price/应该返回 2013/07/31/a-new-health-care-approach-不要隐藏价格
http://nytimes.com/2013/07/31/a-new-health-care-approach-dont-hide-the-price?id=2应该返回 2013/07/31/a-new-health-care -方法-不要隐藏价格
http://nytimes.com/2013/07/31/a-new-health-care-approach-dont-hide-the-price应该返回 2013/07/31/a-new-health-care-approach-dont -隐藏价格