perlで一行を一定の文字数で出力させるにはなにか、良い方法はありませんでしょうか?
なお、文字の途中で折り返すのではなく、単語(配列の一単語)単位で処理させたいと思っています。
[プログラム例]
#! /usr/bin/perl
@list = ("a", "bb", "ccc", "dddd", "eeeee", "ffffff");
{
local $, = ", ";
print @list;
}
[出力]
a, bb, ccc, dddd, eeeee, ffffff
[望む出力]
a, bb, ccc,
dddd, eeeee,
ffffff
※ printする前にlengthでバイト数を調べて、折り返すかどうかの判断をしないとだめなのでしょうか?
No.1ベストアンサー
- 回答日時:
formatではダメですか?
#!/usr/bin/perl
my @list = ("a", "bb", "ccc", "dddd", "eeeee", "ffffff");
my $text = join(', ', @list);<
format STDOUT =<
~~^<<<<<<<<<<<
$text
.
write;
参考URL:http://www.rfs.jp/sb/perl/02/11.html
有難うございました。ばっちりです。色々調べてみたエッセンス:
^<<< : 表示できなかったときにスカラ文字列をchopして保持
~~ : repeat line until all fields are exhausted
の組み合わせ。
@listは a, bb, ccc, .... と空白で区切ることで単語として認識させる。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java Java 南京錠 2 2023/02/04 11:46
- その他(プログラミング・Web制作) 変換のプログラムを教えてください。 6 2023/07/01 09:57
- その他(プログラミング・Web制作) awkのtoupper() 1 2022/10/21 20:39
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- その他(プログラミング・Web制作) python質問 1 2023/08/14 11:54
- Visual Basic(VBA) EXCEL VBA 単語置き換え について質問です ブック名 ぶぶぶ シート名 ししし セル V3〜 3 2023/03/08 01:41
- C言語・C++・C# C#の問題です。 文字列型の配列 s[100] にキーボードから入力された100文字以内の文字列(単 2 2022/06/22 15:18
- Visual Basic(VBA) 【VBA】特定の文字で改行(次の行)に行きたい。 3 2022/04/11 17:20
- 中学校 間違った国語の実力テストの勉強? 1 2022/08/28 15:59
- Perl perlで2次元配列をサブルーチンに値渡しで渡す 5 2022/12/17 18:49
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
至急お願いします。C言語で.img...
-
awkスクリプトでダブルクォーテ...
-
教えて!perlから.exeファイル...
-
DOSコマンドで、標準出力を出力...
-
アルファベット、数字を読み込...
-
sprintfについて
-
Perlでファイルの末尾から指定...
-
Perlからchasenの使い方
-
ドメインからIPアドレスあるい...
-
Perl<->Oracle間での文字化けに...
-
VBAでCSVファイルを途中行まで...
-
バッチファイルの作り方(CSV→...
-
close()で例外が投げられる理由
-
batファイルでrenameができませ...
-
VBAでCSVファイルの特定行を書...
-
openした後、closeしないでプロ...
-
VBAコードを張り付け後のエクセ...
-
ListBoxのデータを高速でファイ...
-
JavaでCSVファイルを高速に読む...
-
タブの色を変更する方法
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
awkスクリプトでダブルクォーテ...
-
DOSコマンドで、標準出力を出力...
-
エクセルVBAで素数だけを出力す...
-
教えて!perlから.exeファイル...
-
sprintfについて
-
Perlでファイルの末尾から指定...
-
CGIから外部コマンド実行時の標...
-
重複するデータを抽出できる秀...
-
ファイル出力の改行コードをLFに
-
timeコマンドの結果をテキスト...
-
sprintfで10進数を桁数指定で16...
-
log2の「正確な」計算方法
-
機器のI/OをArduinoでSDに記録...
-
Perl<->Oracle間での文字化けに...
-
Perl中で teeを使っても戻り値...
-
テキストファイルから日本語部...
-
バッチファイルで、記号を含む...
-
htmlから、ファイル、もしくはC...
-
perlでの出力先設定
-
標準エラーと標準出力をファイ...
おすすめ情報