Perl 文字列の始まり/終わりを確認(メタ文字の^/$)

Perlの正規表現の^と$で、文字列の始まりと終わりを真偽値で確認するサンプルです。

確認環境
・Perl 5.26.3

目次

文字列 文字の始まりを真偽値で確認する(^)
  文字列の終わりを真偽値で確認する($)

文字の始まりを真偽値で確認する(^)

  • 正規表現の=~とメタ文字の^を使用します。
  • メタ文字の^は、先頭にマッチします。
  • 以下はPerl公式の日本語翻訳サイトのPerl の正規表現のリファレンスのリンクです。
    https://perldoc.jp/docs/perl/5.16.1/perlreref.pod

コード

文字の始まりを真偽値で確認するサンプルです。

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

my $str1 = "あいうえお";

if ($str1 =~ /^あいう/){
	print "OK"; # OKが出力される
}else{
	print "NG";
}

if ($str1 =~ /^あいえ/){
	print "OK";
}else{
	print "NG"; # NGが出力される
}

5行目は、変数に文字列を代入しています。
7行目は、文字列の「あいうえお」は、文字列「あいう」で始まっているかif文で確認しています。
trueになります。
13行目は、文字列の「あいうえお」は、文字列「あいえ」で始まっているか確認しています。
falseになります。

文字列の終わりを真偽値で確認する($)

  • 正規表現の=~とメタ文字の^を使用します。
  • メタ文字の$は、末尾にマッチします。
  • 以下はPerl公式の日本語翻訳サイトのPerl の正規表現のリファレンスのリンクです。
    https://perldoc.jp/docs/perl/5.16.1/perlreref.pod

コード

文字の終わりを真偽値で確認するサンプルです。

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

my $str1 = "あいうえお";

if ($str1 =~ /うえお$/){
	print "OK"; # OKが出力される

}else{
	print "NG";
}

if ($str1 =~ /うえあ$/){
	print "OK";

}else{
	print "NG"; # NGが出力される
}

5行目は、変数に文字列を代入しています。
7行目は、文字列の「あいうえお」は、文字列「うえお」で終わっているかif文で確認しています。
trueになります。
13行目は、文字列の「あいうえお」は、文字列「うえあ」で終わっているか確認しています。
falseになります。

関連の記事

Perl 文字列の位置を取得する(index/rindex)
Perl 文字列を置き換えるサンプル(substr/s///演算子)
Perl 英字の大文字と小文字を変換(lc関数/uc関数)
Perl 文字列の一部を取得するサンプル(substr)

△上に戻る