Perlで2つのURLを比較する必要があります。
DOMAINのみまたはDOMAIN/(ルートURLがスラッシュで終わる)で構成されるURLは同等です。
とは言うものの、次の文字列は同じ数である必要があります:「http://example.com」と「http://example.com/」。
To compare two URLs, use the eq( ) method:
if ($url_one->eq(url_two)) { ... }
For example:
use URI;
my $url_one = URI->new('http://www.example.com');
my $url_two = URI->new('http://www.example.com/');
if ($url_one->eq($url_two)) {
print "The two URLs are equal.\n";
}
The two URLs are equal.
あなたができること:
my $url_1 = 'http://www.example.com';
my $url_2 = 'http://www.example.com/';
if ( $url_1 =~ m/\A$url_2\/\z/ || $url_2 =~ m/\A$url_1\/\z/ ) {
print "URLs are the same\n";
}
それらが本当に有効なURLであることを考えると。正規表現は、末尾に「/」を追加した場合でも、それが同じURLであることを確認するだけです。
したがって、$url_1の最後に「/」を追加すると「http://www.example.com/」になります。これはiftrueの2番目の条件になります。