URI::F...emeless(3pm)
π URI::Find::Schemeless π
okay bestie, welcome to URI::Find::Schemeless(3pm) β the Perl doc page for the little subclass that goes hunting for URIs that forgot to bring their http:// with them. it's part of the User Contributed Perl Documentation, and yes it's giving very "I only find most of the URLs, don't @ me" energy. let's get into it π¦
β¨ NAME β¨
URI::Find::Schemeless β find schemeless URIs in arbitrary text. literally its whole job. that's the vibe. π
πΈ SYNOPSIS πΈ
require URI::Find::Schemeless;
my $finder = URI::Find::Schemeless->new(\&callback);
The rest is the same as URI::Find.
no cap, the rest of how you use it is exactly the same as URI::Find. this subclass just has different taste in what counts as a URI. π
π DESCRIPTION π
so here's the tea, bestie: URI::Find finds absolute URIs in plain text, and it's got some weak little heuristics for sniffing out schemeless ones. this subclass though? this one is for finding things that might be URIs just vibing in free text. things like "www.foo.com" and "lifes.a.bitch.if.you.aint.got.net". iconic examples, honestly. π₯
the heuristics are built so that it hopefully finds a minimum of false positives. but β and this is the part where we all sigh β there's no easy way for it to know if something like "COMMAND.COM" refers to a web site or a file. it's just out here guessing. main character energy, questionable accuracy. π
π§ top_level_domain_re π§
my $tld_re = $self->top_level_domain_re;
returns the regex for matching top level DNS domains. and listen, the regex has rules: it shouldn't be anchored, it shouldn't do any capturing matches, and it should make itself ignore case. that's the whole spec. periodt. β¨
π AUTHOR π
original code by Roderick Schertler <roderick@argon.org>, adapted by Michael G Schwern <schwern@pobox.com>. π
currently maintained by Roderick Schertler <roderick@argon.org>. he came back for it, we love a redemption arc. π«Ά
π SEE ALSO π
L<URI::Find>
the parent module! the blueprint! the blueprint that this one lowkey stole the whole workflow from. iykyk. β
and that's the whole page, bestie π
this was URI::Find::Schemeless(3pm) from the User Contributed Perl Documentation, generated for perl v5.34.0 and dated 2022-06-28. go forth and find those schemeless URIs, you absolute legend π¦β¨
π¦ where this page comes from
- debian bookworm: liburi-find-perl 20160806-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- debian trixie: liburi-find-perl 20160806-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: liburi-find-perl 20160806-3 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms