在Perl6中,如何从字符串中删除最后一个字符?
答案 0 :(得分:6)
关于如何删除字符串的最后一个字母的mq.connection.name.list=localhost(1414)
笔记:
Perl6
注意$ perl6 -e 'my $x="a b c d "; $x = chop( $x ); say "<$x>";'
<a b c d>
$ perl6 -e 'my $x="a b c d "; $x ~~ s/" "$//; say "<$x>";'
<a b c d>
表示在字符串末尾匹配
答案 1 :(得分:4)
您可以使用substr
:
$ perl6 -e 'my $a := "abcde"; say $a.substr(0, *-1)'
abcd
答案 2 :(得分:1)
chop会从字符串中取出最后一个字符,但有时你想删除行终止符,所以你宁愿使用chomp:
my @s = "hello world", "hello world\n", "hello world\r", "hello world\r\n" ;
my $ct = 0 ;
for @s -> $str {
say "run ", $ct++ ;
my $s1 =$str ;
my $s2 =$str ;
say "orig >",$str,"<" ;
say "chop >",$s1.chop,"<" ;
say "chomp >",$s2.chomp,"<" ;
}
输出:
$ ./run.p6
run 0
orig >hello world<
chop >hello worl<
chomp >hello world<
run 1
orig >hello world
<
chop >hello world<
chomp >hello world<
run 2
<rig >hello world
chop >hello world<
chomp >hello world<
run 3
orig >hello world
<
chop >hello world<
chomp >hello world<