ここから本文です

@list={ "あいうえお", "かきくけこ", "さしすせそ"}; という配列があるとし...

アバター

ID非公開さん

2015/5/2120:49:08

@list={
"あいうえお",
"かきくけこ",
"さしすせそ"};

という配列があるとします。

もし「か」がでてきたとき、その前の配列の要素である
”あいうえお”の後ろに”かきくけこ”を連結させるにはどうすればよいでしょうか。


@list={
”あいうえおかきくけこ”,
”さしすせそ”}

ご回答の方宜しくお願いします。

閲覧数:
99
回答数:
2

違反報告

ベストアンサーに選ばれた回答

prw********さん

2015/5/2206:37:05

一番最初の要素に「か」が登場したら
一番最後の要素に連結させるの?

これが
@list={
"かきくけこ",
"あいうえお",
"さしすせそ"
};

こうなる
@list={
"あいうえお",
"さしすせそかきくけこ"
};

この回答は投票によってベストアンサーに選ばれました!

ベストアンサー以外の回答

1〜1件/1件中

ama********さん

2015/5/2210:48:59

@list={
"あいうえお",
"かきくけこ",
"さしすせそ"};

これは、やりたいこととは思えません。
配列に無名ハッシュのリファレンスを代入しています。

@list=(
"あいうえお",
"かきくけこ",
"さしすせそ");

または、

$list=[
"あいうえお",
"かきくけこ",
"さしすせそ"];

のまちがいだろうと思われます。
以下の例は、前者だという前提です。
my_job 関数がご質問の仕事をしています。

use strict;
use warnings;
use utf8;
binmode STDOUT => ':encoding(cp932)'; # 適宜

my @list = (
'あいうえお',
'かきくけこ',
'さしすせそ',
);

@list = my_job(@list);
print "$_\n" for @list;

sub my_job {
my @res;
for (@_) {
if (@res && /か/) {
$res[-1] .= $_;
} else {
push @res, $_;
}
}
@res;
}

「あいうえお、配列」に関する質問

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる