just the domain out of a URL
Matches just the domain out of a URL. It finds the match anywhere inside the text. There is 1 capture group.
Pattern
/^https?://([^/:?#]+)/- Match scope
- anywhere inside the text
- Capture groups
- 1
- What it catches in the first example
- https://sub.a.io
Try it yourself
Type any text and the parts this expression catches are highlighted. It runs in your browser and is never sent anywhere.
https://sub.a.io/path
1 match
Examples that match
- https://sub.a.io/path
Examples that do not match
- sub.a.io
- ftp://a.io
Other expressions in this group
(?:^|\s)#([a-z0-9_]+)a hashtag(?:^|\s)@([a-z0-9_]{2,})an @ mention[?&]([^=&]+)=([^&]*)a query parameter in a URLhttps?://[^\s<>"]+a URL sitting inside ordinary text\.([a-z0-9]+)$the extension of a file name(?<=[a-z0-9])(?=[A-Z])the seam between words in camelCase_([a-z])the letter that follows an underscore-([a-z])the letter that follows a hyphenHow to read this
- With ^ and $ around it, the whole string must match; without them the match can sit anywhere. Always anchor an expression you use for validation.
- Round brackets ( ) capture what they wrap. When you only need grouping, write (?: ) so the numbering of later groups does not shift.
- Every expression here is checked against its examples. Even so, "looks like an email" and "is a real inbox" remain different questions.
- Nested open-ended repeats such as (a+)+ can blow up on certain inputs. Look for that shape before pasting someone else’s expression into your code.
Frequently asked questions
Q. What is the regex for just the domain out of a URL?
^https?://([^/:?#]+).
Q. Which strings match?
Text like https://sub.a.io/path matches; text like sub.a.io does not.
Q. Does the whole string have to match?
No. It finds the part anywhere inside the text. Add ^ and $ around it if you want a whole-string check.
Q. How do I use what it caught?
There is one capture group, so you can read them from match[1] onwards.