Snippets

sironekotoro Perl入学式 2018 第4回 練習問題 love_food.pl

Created by sironekotoro

File love_food.pl Added

  • Ignore whitespace
  • Hide word diff
+#!/usr/bin/env perl
+use strict;
+use warnings;
+
+# Perl入学式 2018 第4回 練習問題
+# https://github.com/perl-entrance-org/workshop-2018/blob/master/4th/slide.md
+# 練習問題(love_food.pl)
+
+my $words_ref = [
+    'alice loves meat!',
+    'bob loves sushi!',
+];
+
+# このような配列のリファレンスを受け取り,
+# リファレンスに格納された文字列について,
+# 「loves」の後に記述されている好きな食べ物の単語を
+# 正規表現で取得し,
+# 「alice -> meat」, 「bob -> sushi」のように
+# 表示するサブルーチン, love_foodを書いてみよう.
+
+love_food($words_ref);
+
+sub love_food {
+
+    # 引数を取得する
+    my $word_ref = shift @_;
+
+    # 配列リファレンスをデリファレンスして配列にする
+    my @array = @{$word_ref};
+
+    for my $line (@array) {
+        # 名前と食べ物がマッチする正規表現を書く
+        $line =~ /(.+) loves (.+)/;
+        print $1 . " -> " . $2, "\n";
+    }
+}
HTTPS SSH

You can clone a snippet to your computer for local editing. Learn more.