You need to use a lookbehind for that, try
http(s)?://([w-]+.)+[w-]+(/[w- ./?%&=;]*)?(?<!jpg)(?<!gif)(?<!doc)$
You need also the anchor $
at the end, it matches the end of the string, that is important to define clearly the point from where the lookbehind should look behind.
See it here on Regexr
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…