Extracting Domain Name from URL with Perl
I oftentimes need to extract the domain name from a URL in the software I write. And I thought I would share my method. This is using the Perl language.
This method consists of 3 consecutive regular expressions.
It discards any leading www. from the domain name. But it does not discard other third-level domain names.
First, remove the http/https and possible www. from the front of the URL:
$url =~ s!^https?://(?:www\.)?!!i;
The above uses "!" as operator delimiters instead of "/" to avoid having to escape the embedded "/" characters. The "i" at the end is to specify case insensitiveness.
Then, strip off everything from the first "/" to the end of the URL (doing nothing if there is no "/"):
$url =~ s!/.*!!;
Last, in case the URL was http://example.com?stuff or http://example.com#stuff or http://example.com:80/whatever, also strip off everything from the first "?" or "#" or ":", if present:
$url =~ s/[\?\#\:].*//;
The value of $url is now the domain name by itself.
Will Bontrager
Was this blog post helpful to you?
(anonymous form)
All information in WillMaster Blog articles is presented AS-IS.
We only suggest and recommend what we believe is of value.
As remuneration for the time and research involved to provide quality links,
we generally use affiliate links when we can.
Whenever we link to something not our own, you should assume
they are affiliate links or that we benefit in some way.
Recent Articles in the Library
Valid File Name Characters
Most simple printable characters are valid within file names. Some are not.
Image Hue Shift
Shift the hues of an entire image with this CSS rule.
Inspecting HTML Tags
Software to inspect meta and link tags that might have changed after the web page was loaded.
Linked Images in Facebook
Post a URL on Facebook. Facebook pulls in an image and links to that URL. (Probably similar on other social media sites.)
Real Download Link
A download link can tell the browser to download the file for saving on the user's hard drive — instead of displaying it in a browser window.
Characters for Hyphenation
The CSS hyphenate-character property can be used to tell the browser an alternate character or set of characters should be used where a hyphen would be inserted at end of lines.
Automatic Wrap Balancing for Headlines
Use the CSS text-wrap:balance; property to better balance the line lengths of multi-line headlines.