2013-05-06 36 views
2

我知道你可以得到一個子字符串substr但這只是start位置和length子字符串。是否有另一個函數利用開始和結束位置,還是我必須$ length = $ end- $ start?有沒有辦法讓perl中的開始和結束位置的子字符串?

my $s = "The black cat climbed the green tree"; 
my $middle = substr $s, 4, -11; #<-- "black cat climbed the" 

回答

2

如果使用負指數,它從尾部計數

join '', (split //, $string)[$start..$end] 

但它可能是更好的使用substr$end - $start

0

你可以切片的字符串作爲字符數組:

-1

在Perl中獲取子字符串使用unpack函數。它的功能比substr更快。

打印解包( 'A5', '計算器');

print unpack(「x6 A6」,'stackoverflow');

輸出:


verflo

相關問題