If you just need a check, and it doesn't have to be a regex, then maybe index() and ne would work?
if( index($str1, $str2) > -1 && $str1 ne $str2 ){
print "$str2 is a substring of $str1\n";
}
With tests to make sure it works as expected:
#!/usr/bin/env perl
use strict;
use warnings;
use Test::Simple;
my $str1 = "helloworld";
my $str2 = "hello";
my $str3 = "hello";
ok( is_substring($str2, $str1), "str2 is a substring of str1");
ok( !is_substring($str3, $str2), "str3 is not a substring of str2");
sub is_substring {
my ($substring, $string) = @_;
return 1 if index($string, $substring) > -1 && $string ne $substri
+ng;
}
|