[#38020] irb で %W(#{...}) — yoshihisa masuda <sacong@...>
マスダといいます。
[#38036] undef variable — hirocy <hirocy@...>
hirocyです.
[#38039] proc method — "K.Sasada" <ko1@...>
こんにちは。ささだです。
[#38056] ファイル書換え? — 中村文建 <tx6f-nkmr@...>
初めまして、MLに参加させて頂く中村と申します。
[#38057] [ANN] Ruby-GNOME2-0.6.0 — Masao Mutoh <mutoh@...>
むとうです。
[#38059] [ANN] rbbr-0.3.0 — Masao Mutoh <mutoh@...>
むとうです。
[#38073] module extendable? — Takeshi Horinouchi <horinout@...>
堀之内と申します。
[#38080] ポートが閉じているときの例外など — Mitsuru Ogino <ogino@...>
荻野と申します。いつも質問や要望ばかりですみません。
なかだです。
いわおかです。
荻野です。
なかだです。
いわおかです。
In message <20030812150516.GV37221@barber.fe.rn.tuat.ac.jp>
中川と申します。
In message <20030814.140757.707824131.tetsuo@sapphire.siz.nes.nec.co.jp>
なかだです。
In message <200308160517.h7G5HcPL012839@sharui.nakada.kanuma.tochigi.jp>
なかだです。
In message <200308180959.h7I9xnb7001977@sharui.nakada.kanuma.tochigi.jp>
[#38090] ruby-1.8 で eruby が SEGV — Kazuhiko <kazuhiko@...>
かずひこです。
[#38104] XMLRPC::ModRubyServer — OHARA Shigeki <os@...>
大原です。
[#38122] ruby-tcpwrap and mkmf.rb — Takahiro Kambe <taca@...>
こんにちは。
At Sat, 16 Aug 2003 12:51:55 +0900,
In message <200308160518.h7G5IXPL012842@sharui.nakada.kanuma.tochigi.jp>
なかだです。
In message <200308160714.h7G7ErPL014647@sharui.nakada.kanuma.tochigi.jp>
前田です。
In message <87d6f3znlc.wl@kirk.priv.netlab.jp>
前田です。
わたなべです。
[#38164] Ruby1.8.0でRuby-PostgreSQLがビルドできない — kensaku Maki <sakaki@...>
はじめまして、まきと申します。
[#38183] String << の動作につきまして — kuto@...
うと と申します。
たけ(tk)です。
ふなばです。
たけ(tk)です。
ふなばです。
たけ(tk)です。
ふなばです。
ども、西啓一朗@Ktouth Brand. です。
ふなばです。
ども、西啓一朗@Ktouth Brand. です。
[#38195] 理解の進め方(Re: String << の動作につきまして) — Tadashi Oh-Ya <toy@...>
おおやです。
たけ(tk)です。
たけ(tk)です
In "[ruby-list:38206] 理解の進め方:シュールな世界"
[#38198] Tmailで送るメールに日付がつけられなくなりました — 川田誠司 <kawada.seiji@...>
はじめまして
青木です。
[#38256] かみ砕いた説明をすべき範囲 — 西 啓一朗 <receiver@...>
ども。西啓一朗@Ktouth Brand. です。
なかだです。
たけ(tk)です
なかだです。
たけ(tk)です
いわおかです。
たけ(tk)です
まつもと ゆきひろです
たけ(tk)です。
たけ(tk)です。
[ruby-list:38070] Re: ファイル書換え?
新井です。
In message "[ruby-list:38068] Re: ファイル書換え?"
on 11 Aug 2003 00:12:02 +0900,
中村文建 <tx6f-nkmr@asahi-net.or.jp> wrote:
> 中村です。
> まだ先が長いような気がします・・
> (1)現フォルダのファイル全てを変換(上書き変換する)
> (2)タグ:大文字→小文字変換
> (3)文字コード:SJIS→JIS変換
> (4)HTML整形・・etc
(1) は、先のメールでよいですね?
(2) を(簡略版で)示すと。
HTMLRegexp = /<.*?>/m
while data = ARGF.gets(nil)
data.gsub!(HTMLRegexp){|match|
match.downcase
}
print data
end
こんな感じです。さらにタグの中の "..." を処理から除外すると
こんな感じです。これはさらに複雑にしたいときのサンプルとして
示しました。
while data = ARGF.gets(nil)
data.gsub!(HTMLRegexp){|match|
match.gsub(/([^"]+)|(".+?")/m) {
s, qs = $1, $2
if s
s.downcase
else
qs # "..." で囲まれた文字列はそのまま
end
}
}
print data
end
> こういう初歩的な事は実は既にプログラムが存在していると思うのですが、
> どなたかご存知の方がいましたら教えて下さい。
ライブラリはあると思いますが(私はあまりHTMLを触らないので知
らないのですが)。元のスクリプトを修正するとこんな感じですか
ね?(あまりテストしてません。処理結果に関しては無保証で ^^;)
HTMLRegexp = /
( <!--.*?--\s*> ) |
( <.*?> ) |
( [^<>]+ )
/xmu
while data = ARGF.gets(nil)
data.gsub!(HTMLRegexp){
comment, tag, tdata = $1, $2, $3
if comment # コメントにマッチした場合
p [:comment, comment] if $DEBUG
comment
elsif tag # タグにマッチした場合
p [:tag, tag] if $DEBUG
tag.gsub(/([^"]+)|(".+?")/m) {
s, qs = $1, $2
if s
s.downcase
else
qs
end
}
elsif tdata # テキストデータにマッチした場合
p [:tdata, tdata] if $DEBUG
tdata.gsub!(/[ \t]+/, " ") # 空白をまとめる
tdata.gsub!(/ $/, "") # 末尾の空白を削除する
tdata.gsub!(/\n+/, "\n") # 改行をまとめる
tdata
end
}
print data
end
--
新井康司 (Koji Arai)