如何删除Perl中哈希值的最后七个字符?

Abd*_*del 20 string perl

我需要切断字符串的最后七个字符(存储在哈希中的字符串).在perl中最简单的方法是什么?提前谢谢了!

Chr*_*utz 42

substr():

substr($string, 0, -7);
Run Code Online (Sandbox Code Playgroud)

我建议你substr()在复制并粘贴到你的代码之前阅读Perldoc页面(我上面链接了).它完成了你的要求,但它substr()是一个非常有用和多功能的功能,我建议你理解你可以使用它的一切(通过阅读文档).

此外,在将来,请考虑谷歌搜索您的问题(或者,在Perl的情况下,在Perldoc上查找),然后再在此处提问.你可以在这里找到很好的资源,而不必在这里提问.不要提出你的问题,但这很简单,我想如果你尝试过,你可以自己找到答案.

  • 在这种情况下,"perldoc -q string"会有所帮助.-q选项在常见问题解答中搜索,并指向"如何访问或更改字符串的N个字符?" 其中包含Abdel所寻求的答案. (4认同)

yst*_*sth 11

要删除最后7个字符:

substr($str, -7) = '';
Run Code Online (Sandbox Code Playgroud)

或者有点不优雅

substr($str, -7, length($str), '');
Run Code Online (Sandbox Code Playgroud)

获得除了最后7个字符之外的所有字符:

substr($str, 0, -7)
Run Code Online (Sandbox Code Playgroud)


Tim*_*Tim 6

使用perl substr函数,但将"length"参数设为负数.例:

#!/usr/bin/perl

my $string = "string";
$short = substr($string, 0, -3);
printf $short . "\n";
Run Code Online (Sandbox Code Playgroud)

这将返回带有换行符的字符串"str",因为我们指定截断最后三个字符.看看substr()上Perl文档.