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

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

確認環境
・Perl 5.26.3

目次

substrメソッド

substr (対象の文字列, 位置,長さ, 置換後の文字);
  • 対象の文字列に対して、2つめの引数の位置から3つめ引数の長さで4つめの引数の文字列に置き換えます。
  • 1文字目の位置は0です。
  • 2つめの引数は検索を開始する位置です。
  • 以下はPerl公式の日本語翻訳サイトのsubstrメソッドのリンクです。
    http://perldoc.jp/func/substr

文字列を置き換える

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

#! /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 計算のサンプル(演算/代入演算子/インクリメント/デクリメント)

△上に戻る