my($dir);
fore
my($dir);
foreach $dir (@_) {
$dir =~ s!/+$!!;
eval { mkpath($dir) };
if ($@) {
die "$prog $op: failed to make directory $dir: $@\n";
}
}
大概知道以上内容的意思是在根目录/下创建目录sdklib,现想让以上内容变为在/usr/local/下创建目录sdklib,如何修改以上代码,谢谢!
哪位大虾解释一下Perl语句 $dir =~ s!/+$!!;
答案:1 悬赏:80 手机版
解决时间 2021-02-10 10:25
- 提问者网友:ミ烙印ゝ
- 2021-02-09 13:47
最佳答案
- 五星知识达人网友:十年萤火照君眠
- 2021-02-09 15:14
你的代码看不懂,但是你标题里面的这句能懂:
$dir =~ s!/+$!!;
这是一个正则表达式替换语句,表示把$dir进行替换(=~s),把末尾的一个或者多个/替换为空,本语句就是删除末尾/的功能。!是正则表达式的分界符号,三个!有两部分内容,前面部分是查找内容,后面部分是替换内容。查找内容里面/+表示一个或者多个/,$表示行尾。
$dir =~ s!/+$!!;
这是一个正则表达式替换语句,表示把$dir进行替换(=~s),把末尾的一个或者多个/替换为空,本语句就是删除末尾/的功能。!是正则表达式的分界符号,三个!有两部分内容,前面部分是查找内容,后面部分是替换内容。查找内容里面/+表示一个或者多个/,$表示行尾。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯