我试图在Perl中执行PHP左边修剪。
我有以下字符串值:
user1/es/public_html/shop/images/banners/326583.jpg
我需要修剪' / shop'左边的所有内容,所以我的字符串值将如下所示:
/shop/images/banners/326583.jpg
我有以下删除空白的地方,这里是应用' user1 / eschemtrad / public_html'的最佳解决方案。注册前?
my $image = $banners[$i]{'imageloc'};
$image =~ s/\s+$//;
答案 0 :(得分:4)
最明显的解决方案是捕获您想要的部分 - 从/shop
开始的所有内容。请注意,我使用大括号{}
代替默认斜杠来分隔正则表达式,这样我就不必在模式中删除斜杠
use v5.14;
my $s = 'user1/es/public_html/shop/images/banners/326583.jpg';
say my ($trimmed) = $s =~ m{(/shop.*)};
/shop/images/banners/326583.jpg
答案 1 :(得分:3)
这样的事情应该这样做:
my $str = "user1/es/public_html/shop/images/banners/326583.jpg";
$str =~ s|.*(?=/shop/)||;
print $str; #
输出:
/shop/images/banners/326583.jpg
答案 2 :(得分:0)