(?i)\b((?:(?:[a-z][\w-]+:)?(?:/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}/)(?:[^\s()<>]+|\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+(?:\(([^\s()<>]+|(\([^\s()<>]+\)))*\)|[^\s`!()\[\]{};:'".,<>?«»“”‘’]))
- xombie21@lemmy.dbzer0.comEnglish4 months
That’s John Gruber’s regex pattern for matching URL’s (⌐■_■).
- marlowe221@lemmy.worldEnglish4 months
This is an example of the old adage that “When you use a regex to solve a problem, you end up with two problems.”
- neidu3@sh.itjust.worksEnglish4 months
Looks like an URL matcher of some sorts, not limited to HTTP. Kudos for handling parentheses as valid URL characters.
- 3 months
It seems most browsers basically ignore them:
https://lemire.me/blog/2026/02/28/you-can-use-newline-characters-in-urls/
So probably not worth remembering anyway.
Also no encoded basic auth or raw ip addresses (not that a useful website would likely use raw ipv4 or 6 since that causes huge CORS and sometimes even DNS issues…)
- bleistift2@sopuli.xyzEnglish4 months
As visualized by Regex Vis [1]

As visualized by Regexper [2]

The regex fucks with the markdown, so I had to put them in code tags:
[1]
https://regex-vis.com/?r=%5Cb%28%28%3F%3A%28%3F%3A%5Ba-z%5D%5B%5Cw-%5D%2B%3A%29%3F%28%3F%3A%2F%7B1%2C3%7D%7C%5Ba-z0-9%25%5D%29%7Cwww%5Cd%7B0%2C3%7D%5B.%5D%7C%5Ba-z0-9.%5C-%5D%2B%5B.%5D%5Ba-z%5D%7B2%2C4%7D%2F%29%28%3F%3A%5B%5E%5Cs%28%29%3C%3E%5D%2B%7C%5C%28%28%5B%5E%5Cs%28%29%3C%3E%5D%2B%7C%28%5C%28%5B%5E%5Cs%28%29%3C%3E%5D%2B%5C%29%29%29*%5C%29%29%2B%28%3F%3A%5C%28%28%5B%5E%5Cs%28%29%3C%3E%5D%2B%7C%28%5C%28%5B%5E%5Cs%28%29%3C%3E%5D%2B%5C%29%29%29*%5C%29%7C%5B%5E%5Cs%60%21%28%29%5C%5B%5C%5D%7B%7D%3B%3A%27%22.%2C%3C%3E%3F%C2%AB%C2%BB%E2%80%9C%E2%80%9D%E2%80%98%E2%80%99%5D%29%29[2]
https://regexper.com/#\b((?:(?:[a-z][\w-]%20:)?(?:\/{1,3}|[a-z0-9%])|www\d{0,3}[.]|[a-z0-9.\-]+[.][a-z]{2,4}\/)(?:[^\s()%3C%3E]+|\(([^\s()%3C%3E]+|(\([^\s()%3C%3E]+\)))*\))+(?:\(([^\s()%3C%3E]+|(\([^\s()%3C%3E]+\)))*\)|[^\s%60!()\[\]{};:'%22.,%3C%3E?%C2%AB%C2%BB%E2%80%9C%E2%80%9D%E2%80%98%E2%80%99])) Aatube@lemmy.dbzer0.comEnglish
4 monthscheck out Regulex! it doesn’t support mode modifiers but
it does lack some features but i really like how its graphs look- ulterno@programming.devEnglish3 months
Nice. Is there terminal/native running software with something similar?
Other than just running the HTML+JS/TS project in a container.
- 4 months
At first glance IP address or URL, embedded in HTML, whatever it is, it’s a doozy. I wonder what the performance of it is like.
- bleistift2@sopuli.xyzEnglish4 months
Whatever this is supposed to match, I bet the bycatch is bigger than tuna fishing.
- DarkSirrush@piefed.caEnglish4 months
URLs in an HTML document that aren’t namespaces or otherwise enclosed?




