htmlファイルの整形を考えています。
行末が必ず">"で終るように整形したいと思っています。
具体的にやりたいことは、awk または sed で、
">"で終っていない行は次の行と連結し、それが">"で終ればその段階で出力、
それでも">"で終らなければまたその次の行を連結し...
という作業をしたいのですが、その様なことができるでしょうか?
1行ごとに対する処理にはある程度なれているのですが、行に渡る作業には不馴れです。
良い方法がありましたら、ご教授頂けると幸です。
また、私はperlを知らないのですが、
もし「perlならこう書けば言い」ということが分る方がおりましたら、
その場合もご教授いただけたら嬉しく思います。
よろしくお願いします。
No.1
- 回答日時:
perlでなら以下のようになります。
---------------------------
# 最後が >の時出力、以外は連結する。
$line = "";
while(<>){
chomp($_);
$line .= $_;
if (substr($line,-1,1) eq ">"){
print $line , "\n";
$line = "";
}
}
# 最後は ">"でなくても強制出力
if ($line ne ""){
print $line , "\n";
}
----------------------------
perl△上記のスクリプト名△htmlファイル名 と入力して下さい。
結果が標準出力に出力されるのでリダイレクトして下さい。
メチャクチャすばやい回答有難う御座います。
教えて頂いたスクリプトで私のやりたいことが出来ました。
Cは少しは知識がありますので、やっていることはほぼ理解できました。
有難うございます!
No.2
- 回答日時:
sedとawk簡単で良いですよね~.
現在awkが使える環境ではないのですぐにサンプルが書けませんが…
awkでif文あたりで分岐してあげれば良いのではないでしょうか?
if ( ** =">" ) print ("***")
見たいな感じで…
>sedとawk簡単で良いですよね~.
そうなんですよね。Cなら数行要するところがにくい1行野郎で出来て仕舞うところが魅力です。
私も最初、if文分岐でやろうと思ったのですが、
行の「最後の1文字」(ご回答の ** にあたる部分)をどう書いたら良いものか分りませんでした。
ご回答ありがとう御座いました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Perl Perlで特定文字列から特定文字列までを抜き出したい 4 2022/04/02 14:24
- Perl Perlでファイルの末尾から指定文字列を検索してファイルに吐き出したい 4 2022/04/04 16:15
- UNIX・Linux Linuxについて質問です。 以下のhistoryの出力結果から、sedコマンドのファイル名tmp1 1 2023/02/03 20:11
- 専門学校 25歳の社会人のものなのですが 3dcgデザイナーになりたくMayaを独学で勉強していたのですが社会 1 2023/07/03 09:23
- その他(クラウドサービス・オンラインストレージ) Onedriveで実現したい事。2台のPC間で。 2 2023/04/10 20:42
- Visual Basic(VBA) VBAで自動集計(特定セルコピー月ごとに値貼り付け)したい。 6 2023/06/25 11:37
- 訴訟・裁判 裁判の次回期日や提出された書面を閲覧したい 4 2022/07/25 22:35
- 分譲マンション 【困っています】分譲マンション 管理組合として、この場合どう体制を取れば良いでしょうか? 2 2022/07/26 23:16
- その他(ビジネス・キャリア) 会社での懲戒処分 4 2023/04/18 21:21
- 会社・職場 アラサー社会人女です。 鬱で三ヶ月繁忙期に休み、来月から以前より希望していた別の部署にて復職予定です 3 2023/06/29 12:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ubuntu(linux)のシャットダウン...
-
bashでシングルクォート内の変...
-
Linux Mint 日本語入力できなく...
-
ubuntuのシャットダウンが進ま...
-
AWSでSSH接続をしたいのですが...
-
テキストファイルをページ番号...
-
2TBのUSBメモリを2000円ほどで...
-
Ubuntuで数字だけのユーザーア...
-
Linux のシェルスクリプトの強...
-
tarで纏める際に、複数場外した...
-
ubuntuで デイスク/deb/loopと...
-
ssl_error_logのエラー内容(AH...
-
ログにserver reached MaxReque...
-
lubuntuのインストールが終わり...
-
e4defragコマンドでデフラグ
-
[Linux初心者]Ubuntu22.04.3LTS...
-
Ubuntu系とCentOS系の違いはな...
-
Linuxのパーティション番号の変...
-
Windowsのローカルディレクトリ...
-
プログラミングPC、LinuxのOSパ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
bashでシングルクォート内の変...
-
ubuntu(linux)のシャットダウン...
-
AWSでSSH接続をしたいのですが...
-
Linuxのパーティション番号の変...
-
ubuntuで デイスク/deb/loopと...
-
自作のウェブサイトを友人に見...
-
ubuntuのシャットダウンが進ま...
-
[Linux初心者]Ubuntu22.04.3LTS...
-
Ubuntu系とCentOS系の違いはな...
-
Ubuntu on Xorgのログインについて
-
Windowsのローカルディレクトリ...
-
tarで纏める際に、複数場外した...
-
Linux のシェルスクリプトの強...
-
Ubuntuで数字だけのユーザーア...
-
linuxサーバーのキャッシュをク...
-
shellscript内のコマンドを、su...
-
ssl_request_logの必要性について
-
ubuntuのサーバー(virtual box)...
-
Kali Linuxで起動できない - Mi...
-
ホストオンリーアダプタで接続...
おすすめ情報