Skip to content
Go to file

Latest commit

This leads to far more false positives than negatives. It is useful to
allow other punctuation characters, such as '\'' or ',', since they do
come up in plain English URLs quite often, such as Wikipedia pages.

Double quote '"' characters come up far less often, and they cause
problems far more often, such as in JSON or source code strings which
contain URLs.

Let's remove them and see how many users complain.

Fixes #41.

Git stats


Failed to load latest commit information.



Extract urls from text using regular expressions. Requires Go 1.13 or later.

import ""

func main() {
	rxRelaxed := xurls.Relaxed()
	rxRelaxed.FindString("Do gophers live in")  // ""
	rxRelaxed.FindString("This string does not have a URL") // ""

	rxStrict := xurls.Strict()
	rxStrict.FindAllString("must have scheme:", -1) // []string{""}
	rxStrict.FindAllString("no scheme, no match:", -1)       // []string{}

Since API is centered around regexp.Regexp, many other methods are available, such as finding the byte indexes for all matches.

Note that calling the exposed functions means compiling a regular expression, so repeated calls should be avoided.


To install the tool globally:

cd $(mktemp -d); go mod init tmp; GO111MODULE=on go get
$ echo "Do gophers live in" | xurls
You can’t perform that action at this time.