Perlの文字列の一部を取得するサンプルです。
確認環境 ・Perl 5.26.3 |
目次
substrメソッド(引数3つ)
substr (対象の文字列, 開始位置,長さ) |
- 1つめの引数の「対象の文字列」に対して、2つめの引数の「開始位置」から3つめの引数の「長さ」で文字列を取得します。
- 1文字目の位置は0です。
- 以下はPerl公式の日本語翻訳サイトのsubstrメソッドのリンクです。
http://perldoc.jp/func/substr
コード
substrメソッドの引数が3つのサンプルです。
#! /usr/bin/perl
use strict;
use warnings;
my $a = "abcde";
print substr($a,0,1); # a
print substr($a,1,1); # b
print substr($a,2,1); # c
print substr($a,0,3); # abc
print substr($a,2,2); # cd
7~9行目は、指定の位置から1文字取得しています。
11行目は、最初の文字「a」から3文字取得しています。
13行目は、途中にある文字の「c」から2文字取得しています。
substrメソッド(引数2つ)
substr (対象の文字列, 開始位置) |
- 1つめの引数の「対象の文字列」に対して、2つめの引数の「開始位置」から最後までの文字を返します。
- 以下はPerl公式の日本語翻訳サイトのsubstrメソッドのリンクです。
http://perldoc.jp/func/substr
コード
substrメソッドの引数が2つのサンプルです。
#! /usr/bin/perl
use strict;
use warnings;
my $a = "abcde";
print substr($a,2); # cde
print substr($a,3); # de
print substr($a,4); # e
7,9,11行目とも、指定した位置の文字から最後の文字まで取得しています。
関連の記事
Perl 文字列の位置を取得する(index/rindex)
Perl 文字列を置き換えるサンプル(substr/s///演算子)
Perl 英字の大文字と小文字を変換(lc関数/uc関数)