我需要截取一个字符串的最后七个字符(该字符串存储在哈希表中)。在Perl中,最简单的方法是什么?非常感谢!
使用substr()
函数:
substr($string, 0, -7);
建议您在将此代码复制粘贴到您的代码之前,先阅读我上面提供的substr()
Perldoc页面。它可以达到您要求的效果,但是substr()
是一个非常有用和多功能的函数,我建议您通过阅读文档了解其它用途。
另外,在未来,请先考虑通过谷歌搜索(或在Perl中查找Perldoc)您的问题,然后再在这里提问。您可以找到很好的关于此类问题的资源,而不必在这里提问。不是为了贬低您的问题,但它相当简单,如果您尝试一下,就可以自己找到答案。
要删除最后7个字符:
substr($str, -7) = '';
或者有点不太优雅的
substr($str, -7, length($str), '');
获取除了最后7个字符之外的所有字符:substr($str, 0, -7)
substr
函数,但将“length”参数设为负数。例如:#!/usr/bin/perl
my $string = "string";
$short = substr($string, 0, -3);
printf $short . "\n";
由于我们指定了截取最后三个字符,因此这将返回带有换行符的字符串“str”。请参阅Perl文档中关于substr()函数的说明。