Perl 文字列を置き換えるサンプル(substr/s///演算子)

Perlの文字列を置き換えるサンプルです。(確認環境:Perl 5.26.3)

目次

サンプル 文字を置き換える(substrメソッド)
文字を置き換える(s/// 演算子)

文字を置き換える(substrメソッド)

substr (対象の文字列, 位置,長さ, 置換後の文字);
  • 対象の文字列に対して、2つめの引数の位置から3つめ引数の長さで4つめの引数の文字列に置き換えます。
  • 1文字目の位置は0です。
  • 2つめの引数は検索を開始する位置です。

文字列を置き換えるサンプルです。

#! /usr/bin/perl
use strict;
use warnings;

my $a = "AAA-AAA";

substr($a, 0, 1, "z"); 

print $a; # zAA-AAA

my $b = "BBB-BBB";

substr($b, 0, 2, "z"); 

print $b; # zB-BBB

7行目は、対象の文字列の1文字目のAをzに置換しています。
13行目は、対象の文字列の1文字目と2文字目のAをzに置換しています。

 

文字を置き換える(s/// 演算子)

s /置換前の文字/置換後の文字/オプション

文字を置き換えるサンプルです。

#! /usr/bin/perl
use strict;
use warnings;

my $a = "AAA-AAA";

$a =~ s/A/z/g;

print $a; #zzz-zzz

my $b = "BBB-BBB";

$b =~ s/B/z/;

print $b; #zBB-BBB

7行目は、gオプションがついています。一致した文字全てを置換しています。
13行目は、gオプションがありません。最初の1文字のみ置換しています。

関連の記事

Perl if文のサンプル
Perl while文とdo…while文のサンプル
Perl for文 処理を繰り返すサンプル(last/next)
Perl 計算のサンプル($a +=3や++$aと$a++)

△上に戻る