No.1
- 回答日時:
spliceですねぇ。
http://www.rfs.jp/sb/perl/05/splice.html
なにかを勘違いしちゃったんじゃないでしょうか?
@Arr = qw|ab cd ef gh|;
@Arr2 = qw|WX YZ|;
splice @Arr,2,0,@Arr2;
# @Arrの#2の位置から0個の要素を削除し、@Arr2を挿入する。
print "@Arr";# 結果 → ab cd WX YZ ef gh
この回答への補足
回答ありがとうございます。
やはりspliceを使うのが無難なのですねw
ただ、再度試した結果やはり追加というより上書きのようになってしまいますorz
例>
@array=(a,b,c,d,e);
$test="test";
splice @array,2,0,$test;
print @array;
結果は→a b ctest d e
のような感じなってしまいます。
splice関数で何か注意点などがあれば教えてください
お願いします。
No.2ベストアンサー
- 回答日時:
ループで配列の中身を読み込みながら別の新しい配列に値を入れ、その途中で、目的の場所になったらそこに入れたいデータを挿入するプログラムを書けばどうでしょうか。
$n=3;#どこに追加するか
$dat="new";#新データ
@arr=(0,1,2,3,4,5,6,7,8,9);#データを追加する配列
my(@new);
--$n;#数字調整
for($a=0;$a<=$#arr;++$a){
if($a==$n){push(@new,$dat);}else{}#新データを入れる
push(@new,$arr[$a]);#配列のデータを入れる。
}
大体こんな感じでしょうか。上三行は設定です。
適当に書いたサンプルなので、少し突っ込みどころとか間違いもあるかもしれません。他にも、while(@arr){}とshift(@arr)を使って、もう少し見た目すっきりにすることはできそうですね。
後アドバイスとして、関数に不満があったり、上手く動かなかったら、自作した方がいいですよ。
回答ありがとうございます。
関数があまり当てにならないので自作の方向で検討してみますw
何事も練習ということで、参考にさせてもらいます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Perl perlで2次元配列をサブルーチンに値渡しで渡す 5 2022/12/17 18:49
- JavaScript Javascript の配列の削除 (初心者) 4 2022/05/02 11:12
- Perl perlをバージョンアップしたら、今まで正常に動いていたプログラムが、エラーになってしまった 3 2022/10/05 15:44
- Ruby 初心者プログラミング 3 2022/10/12 11:31
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- 邦楽 音楽の著作権について 3 2023/02/14 23:36
- Perl perlについて 2 2022/11/18 19:38
- その他(パソコン・スマホ・電化製品) エクセル初心者です。 仕事でエクセルを使っていて、普段は素人でもできる簡単な関数を使ったことがある程 1 2022/05/25 11:17
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- JavaScript オブジェクトから任意のプロパティを全て抽出する一番簡単な方法 1 2023/08/09 21:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
for文とforeach文について
-
クラスに配列を渡す方法
-
Strawberry Perl for Windows ...
-
DataGridViewに配列の値を表示...
-
参照配列の要素数の求め方は?
-
二次元配列における要素数のは...
-
perlで2次元配列をサブルーチ...
-
リストボックスに縦スクロール...
-
Powershell $変数 = @()の空配...
-
VB6で配列の最大値を簡単に求め...
-
Excel VBA ユーザーフォームの...
-
VBAのautofilter、criteriaの配...
-
VBA 二次元配列 ループの書き方
-
do-while文での無限ループ?
-
プログラミングについて。 1つ...
-
画面を強制的に再描画させる方法
-
DoEventsが必要な理由について
-
エクセルの当番表を作っていま...
-
VBAで3秒だけ時間を止めたい
-
ループ内での条件処理
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAのautofilter、criteriaの配...
-
二次元配列のインデックスについて
-
リストボックスに縦スクロール...
-
Excel VBA ユーザーフォームの...
-
マクロ Publicでの配列定義
-
エクセルVBAでTransposeの不思議
-
二次元配列における要素数のは...
-
Strawberry Perl for Windows ...
-
perlで2次元配列をサブルーチ...
-
クラスに配列を渡す方法
-
Dim flag(4) as boolean で配列...
-
文字の整列(printf)
-
perlで配列の要素が空なのを知...
-
jcode->jfold で禁則処理
-
VB6で配列の最大値を簡単に求め...
-
perl 配列の要素数について
-
ファイル名に日付・時刻を付与...
-
チェックボックスのperlでの値...
-
組み合わせについての質問です...
-
配列を初期化する時ってどうす...
おすすめ情報