以下の様な文字列を
<div>xxx</div>yy<span>zzz</span>
以下の様に編集したいです。
<div>xxx</div>
yy
<span>zzz</span>
htmlのタグ毎に改行を挿入したいのです。
もしも上記例でyyがなければ以下の様に書くのですが、
require 'drb/drb'
puts DATA.read.scan(/(<.+?>.+?<\/.+?>)/).join("\n")
__END__
<div>xxx</div>yy<span>zzz</span>
以上、よろしくご指導の程、お願い申し上げます。
No.2ベストアンサー
- 回答日時:
最近マニュアルを見ていたら、splitでこのようなことができる事に気づきました。
こんなのはどうですか。
puts DATA.read.chomp.split(/(<.+?>.+?<\/.+?>)/).reject{|a| a==""}.join("\n")
もう少し縮めて
puts DATA.read.chomp.split(/(<.+?>.+?<\/.+?>)/).reject{|a| a==""}
もできるみたいです。
もうひとつおまけですが、\を使うのがいやな場合は
puts DATA.read.chomp.split(%r[(<.+?>.+?</.+?>)]).reject{|a| a==""}
のような書き方も
No.1
- 回答日時:
scan部分を
split(/(<.+?>.+?<\/.+?>)/)
にします。()で囲むのがミソです。
この回答への補足
ki073さん、ご回答有り難うございます。
なるほど!! 素晴らしい!! 頭イイ!!
しかし、一行目と最終行に空行が入っちゃいますね。
最終行はchompを加えれば消えますが一行目を消そうと思い、以下の様に書いてみました。
puts DATA.read.chomp.split(/(<.+?>.+?<\/.+?>)/).inject([]){|array,i|
array<<i if i!='';
array
}.join("\n")
なんか、仰々しくなってしまいました。。。 もう少しスマートな方法とかないでしょうか??
ライブラリを使った解でもかまいません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS CSSのホバーエフェクト 1 2023/06/19 06:53
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- HTML・CSS HTMLで特定の文字だけ色を変えたいのですが、指定した色と違う色が反映してしまいます。 下記、「前」 5 2023/06/27 12:08
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP ランキングを表示する際の画像の大きさを固定することは可能でしょうか? <?php if ( has_ 1 2022/07/21 14:55
- JavaScript jqueryを使ったスムーススクロールのコードを書いたのですが、HTMLコード内にある、a butt 2 2022/04/14 10:59
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- HTML・CSS FC2カートのテンプレートでの商品表示について 1 2023/03/02 18:05
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでの素数の求め方
-
質問です。 新規登録ボタンが全...
-
Excel VBAでのIE操作でクリック...
-
htmlの文字が縦書きになる
-
widthやheightの数値に単位(px...
-
リストマーカーをボックス内に...
-
角丸画像の背景色を透明にした...
-
CSSのクラス名・ID名の指定でワ...
-
html の divとtable の役割
-
emとstrongの反対
-
ボタンをセル内一杯に表示させ...
-
中点「・」の改行について
-
含む含まないという概念自体の...
-
【ヒトの神秘】美男美女から何...
-
htmlのolやulなどlistにtitleや...
-
idの中のid指定
-
NからZへの全単射を具体的に構...
-
htmlのid属性って必要なの?
-
HTML要素のid/class名の長さに...
-
imgタグをそのまま使うことは正...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ASP.NETでプレーンなページに文...
-
cnt <= (others => '0'); の意...
-
pythonでのカーソル移動がずれる
-
Excel VBAでのIE操作でクリック...
-
質問です。 新規登録ボタンが全...
-
safariで見るとページ上部に余...
-
CSSで、何故か、「float」が上...
-
vbaでieを操作しようとしていま...
-
VBAでの素数の求め方
-
css リンクの色が全部変わって...
-
SEO 検索エンジンについて
-
初歩的ですが・・・
-
CSSセクレター 子孫のみに適用...
-
DIVの入れ子で、FireFoxだとレ...
-
Ajaxで文字列を表示したいです。
-
ワードプレスで何度消しても空...
-
RubyのHTMLパーサーで複数のタ...
-
最初の文字後ろのスペースを大...
-
検索結果がツリー状に表示され...
-
IEとFireFoxの表示の違いで悩ん...
おすすめ情報