5͂̃TvR[h
---------------------
ڎiy[Wԍj
P91
P92-1
P92-2
P92-3
P93
P94
P95
P98
P100
P102
P103
P104
P105
P108
P109
---------------------

P91
# Pȕ}b`O
#  simple.pl

print "Ȃ̖O͉ł: ";
$string = <STDIN>;
chomp($string);

# p^[}b`
print "ɂ́AYB\n" if ($string =~ /Y/);

P92-1
# Pȕ}b`O
#  simple2.pl

print "Ȃ̖O͉ł: ";
$string = <STDIN>;
chomp($string);

# p^[}b`
print "ɂ́AYB\n" if ($string =~ m#Y#);

P92-2
# Pȕ}b`O
#  simple_not.pl

print "Ȃ̖O͉ł: ";
$string = <STDIN>;
chomp($string);

# p^[}b`
print "ɂ́AȂ͑Ył͂ȂłˁB\n"
  if ($string !~ /Y/);

P92-3
# }b`ȎOp^[擾
#  simple_prepost.pl

print "Ȃ̖O͉ł: ";
$string = <STDIN>;
chomp($string);

# p^[}b`
print "p^[O: $`\np^[: $&\np^[: $'\n"
  if ($string =~ /Y/);

P93
# JԂ
#  repeat.pl

$string = "ABCDEFABCDABC";

# gIvVwhileXe[ggŌJԂ
print "p^[O: $`\np^[: $&\np^[: $'\n\n"
  while ($string =~ /ABC/g);

P94
# 啶ʂȂ
#  capital.pl

# ݂̂ō\
$string = "perl";
print "uperlvɃ}b`: $string\n" if ($string =~ /perl/i);

# 啶݂̂ō\
$string = "PERL";
print "uperlvɃ}b`: $string\n" if ($string =~ /perl/i);

# 啶Əō\
$string = "Perl";
print "uperlvɃ}b`: $string\n" if ($string =~ /perl/i);

P95
# oɂϐWJ
#  omark.pl

# zƏ}b`̒`
@array = ("Perl ABC", "ABCDEF", "Perl", "ABC");
$search = "ABC";

# r$search̒lύX
print "oȂ̃}b`\n";
foreach (@array) {
  if ($_ =~ /$search/) {
    $search = "Perl";
    print "$_\n";
  }
}

$search = "ABC";

# r$search̒lύXBogă}b`
print "\not̃}b`\n";
foreach (@array) {
  if ($_ =~ /$search/o) {
    $search = "Perl";
    print "$_\n";
  }
}

P98
# K\(.A^A$A*A+A?A|)̃eXg
#  regexp.pl

# eXgΏۂ̔z
@array = (
          "ban",
          "banal",
          "banana",
          "bananaland",
          "banana land",
          "banana race",
          "band",
          "bandana",
          "bandit",
          "bangle",
          "dongle",
          "dance",
          "island",
          "sabanna",
          "Vienna",
          100,
          0,
          -1,
          "Perl is No.1",
          "Perl is No.one"
         );

# banaňɉ1܂ޗvf
print "banan.:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /banan./);
}

# dŎn܂vf
print "\n^d:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /^d/);
}

# naŏIvf
print "\nna\$:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /na$/);
}

# baŎn܂naŏIvf
print "\n^ba.*na\$:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /^ba.*na$/);
}

# a0ȏ㑱landtĂvf
print "\na*land:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /a*land/);
}

# a1ȏ㑱landtĂvf
print "\na+land:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /a+land/);
}

# baň1邩ȂŊvf
print "\n^ban.?\$:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /^ban.?$/);
}

# band邢dance܂łvf
print "\nband|dance:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /band|dance/);
}

print "\n";

P100
# K\([ ]A[^ ])̃eXg
#  regexp2.pl

# eXgΏۂ̔z
@array = (
          "ban",
          "banal",
          "banana",
          "bananaland",
          "banana land",
          "banana race",
          "band",
          "bandana",
          "bandit",
          "bangle",
          "dongle",
          "dance",
          "island",
          "sabanna",
          "Vienna",
          100,
          0,
          -1,
          "Perl is No.1",
          "Perl is No.one"
         );

# baňd`g܂ޗvf
print "ban[d-g]:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /ban[d-g]/);
}

# baňd`g܂܂Ȃvf
print "\nban[^d-g]:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /ban[^d-g]/);
}

# lō\Ăvf
print "\n^[0-9]+\$:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /^[0-9]+$/);
}

# 啶܂łvf
print "\n[A-Z]:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /[A-Z]/);
}

# 啶܂łvf
print "\n[A-Z0-9]:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /[A-Z0-9]/);
}

print "\n";

P102
# K\(\dA\DA\sA\S)̃eXg
#  regexp3.pl

# eXgΏۂ̔z
@array = (
          "ban",
          "banal",
          "banana",
          "bananaland",
          "banana land",
          "banana race",
          "band",
          "bandana",
          "bandit",
          "bangle",
          "dongle",
          "dance",
          "island",
          "sabanna",
          "Vienna",
          100,
          0,
          -1,
          "Perl is No.1",
          "Perl is No.one"
         );

# l܂ޗvf
print "\\d+:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /\d+/);
}

# uPerl is No.vŎn܂ǍɐlȊO̕vf
print "\nPerl is No\\.\\D:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /Perl is No\.\D/);
}

# 󔒕܂ޗvf
print "\n\\s:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /\s/);
}

# bananǎɋ󔒕܂܂Ȃvf
print "\nbanana\\S:\t";
foreach $value (@array) {
  print "$value," if ($value =~ /banana\S/);
}

print "\n";

P103
# K\(\wA\WA( ))̃eXg
#  regexp4.pl

# eXgΏۂ̔z
@array = (
          "ban",
          "banal",
          "banana",
          "bananaland",
          "banana land",
          "banana race",
          "band",
          "bandana",
          "bandit",
          "bangle",
          "dongle",
          "dance",
          "island",
          "sabanna",
          "Vienna",
          100,
          0,
          -1,
          "Perl is No.1",
          "Perl is No.one"
         );

# ̒P̕тɂȂĂvf
foreach $value (@array) {
  print "$1, $2, $3, $4\n" 
    if ($value =~ /(\w+)\W+(\w+)\W+(\w+)\.(\w+)/);
}

P104
# O[v
#  group.pl

# eXgΏۂ̔z
@array = (
  "beginner",
  "feminine",
  "tin",
  "tininess",
  "tinny"
);

# in+[^in]Ƀ}b`̂\
print "in+[^in] :\t";
foreach $value (@array) {
  print "$value," if ($value =~ /in+[^in]/);
}
print "\n";

# (in)+[^in]Ƀ}b`̂\
print "(in)+[^in] :\t";
foreach $value (@array) {
  print "$value," if ($value =~ /(in)+[^in]/);
}
print "\n";

P105
# {ꕶւ̐K\
#  jencoding.pl

# Shift_JISƂencodingW[̓o^
# (Unixł use encoding "euc-jp";)
use encoding "Shift_JIS";

$hiragana = 0;

print ": ";
$string = <STDIN>;
chomp($string);


while ($string =~ /[-]/g) {

  $hiragana++;
}

print "${hiragana}łB\n";

P108
# ȒPȒu
#  replace.pl

$string = <<EOT
ɂ́AYB

CłAYB
EOT
  ;

# u
$string =~ s/Y/Ԏq/g;

# \
print $string;

P109
# Xy[Xŋ؂2l̐ς\
#  multi.pl

print "2̐lXy[Xŋ؂ē͂Ă: ";
$string = <STDIN>;
chomp($string);

# eIvVgĒډZ(⏬_͈͂ɓꂽK\)
$string =~ s/(\-?\d+\.?\d*)\s+(\-?\d+\.?\d*)/$1 * $2/e;

# \
print "$string\n";
