正则表达式不适合类似的输入

时间:2015-01-22 17:36:03

标签: regex

我有输入:

  1. url=http://www.diffusiononline.co.uk/women-c1/coats-jackets-c133/barbour-international-quilted-womens-jacket-bright-pink-p14973/s30548?utm_source=google&utm_medium=cpc&utm_term=barbour-international-quilted-women-039-s-jacket-bright-pink-size-6-colour-brightpink-66352179002&utm_campaign=product+listing+ads

  2. url=http://www.hurleys.co.uk/womens-c85/jackets-coats-c125/barbour-international-barbour-international-womens-black-dera-vulcan-waxed-jacket-p85604/s415845

  3. 正则表达式

    /url=(?!.*url)(?:https?:\/\/)?(?:www\.)?([^?\/]+)?(\/\S*)/

    对于第一个输入,我可以获得两个匹配,但是第二个输入没有。

    我该如何解决这个问题?

1 个答案:

答案 0 :(得分:2)

更改否定前瞻

(?!.*url)

为:

(?!.*url=)

这会在到达另一个url=前缀时停止,而不是在域中的hurley