perl 语言,有个正则的匹配不明白,my $file = shift; $file =~ /(s_7|s_8)/;

这个匹配在寻找什么?多谢多谢... 这个匹配在寻找什么?多谢多谢 展开
 我来答
laohu2862
2013-06-17 · TA获得超过1246个赞
知道小有建树答主
回答量:557
采纳率:0%
帮助的人:649万
展开全部
my $file = shift;
if($file =~ /(s_7|s_8)/){
print $file;
}

这个脚本查找的是
$file变量里面是否存在 s_7 或者s_8 这两个字符串。
比如 将上面的代码保存为run.pl 然后再命令行输入
perl run.pl s_7
那么最后就会在屏幕打印出s_7
如果输入
perl run.pl s_8
那么久打印s_8
而输入其他的 比如s_6则不打印。
其中
$file = shift;
表示将脚本后面跟的字符串提取到$file这个变量里面。
追问
所以说s_8 或者s_7 其实没有什么特殊含义是么?只是个字符串的形式?
如果是这样的话,谢谢^_^
追答
没有特殊含义,只是普通字符串。只是其中的 | 线表示或者的意思而已。
梦里寻你我他
2013-06-17 · TA获得超过2199个赞
知道大有可为答主
回答量:2171
采纳率:42%
帮助的人:1210万
展开全部
当前路径下的s_7或者s_8子目录
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式