[#20453] thread in loop — Yoshiki Wada <wada@...>
和田と申します。
[#20473] Comparison with Other Languages — Hideto ISHIBASHI <s34204@...>
石橋秀仁です。
まつもと ゆきひろです
石橋秀仁です。
From: Hideto ISHIBASHI <s34204@vip.cis.kurume-nct.ac.jp>
[#20475] Wrapping Regexp in C++/Windows — OZAWA Sakuro <crouton@...>
さくです。
まつもと ゆきひろです
In article <E12GWVc-0004Rq-00@ev.netlab.co.jp>,
なかだです。
まつもと ゆきひろです
[#20505] Array のサブクラス — ogino@...
荻野です。Array や Hash のサブクラスの挙動がどうもよくわかりませんので
[#20523] regexp ML — Tomoyuki Kosimizu <greentea@...2.so-net.ne.jp>
越水です。
[#20525] lib/subdirectory — gotoken@... (GOTO Kentaro)
ごとけんです
[#20526] site_ruby — gotoken@... (GOTO Kentaro)
ごとけんです
[#20534] ftpmirror-1.2.2 で @homepage へ up 不可 — Hirokazu Kiuchi <kiuchi@...>
はじめまして、きうちです。
黒田です。
素早い回答ありがとうござます、きうちです
黒田です。
きうちです
[#20554] エスケープされていないものだけを置換 — Ayanosuke <aya@...>
館林と申します。
たけうちです。
ごとけんです
なひです.
館林です。
[#20598] — "okaukio+mls" <jtz4046@...6.mnx.ne.jp>
ruby-list@netlab.co.jp のみなさん こんにちは。
片岡と申します。
おかゆきおです。
助田です.最初からこのツリーちゃんと読んでなかったんですが...
おかゆきおです。
助田です.ちょっと長いです.
おかゆきおです。
わたなべです.
おかゆきおです。
In article <38A6419D15E.469A.BXQ04723@nifty.ne.jp>,
In <200002130938.SAA17120@rose.duelists.org>,
In article <200002131054.TAA09555@mail.fb3.so-net.ne.jp>,
なかだです。
有馬です。
たかた@久しぶりの投稿です。
たかたです
たかたです
たかたです
From: "Hideaki Takata" <hideakit@d3.dion.ne.jp>
なひです.
なひです.
なひです.
From: "NAKAMURA, Hiroshi" <nakahiro@sarion.co.jp>
有馬です。
なかだです。
わたなべです.
[#20608] media watch 2000.02.08 — Noritsugu Nakamura <nnakamur@...>
[#20625] druby で 3 つのプロセス間でオブジェクトをやり取りする — 堀川 久 <vzw00011@...>
こんにちは。
こんにちは。
Masatoshi SEKI <m_seki@mva.biglobe.ne.jp> wrote:
[#20675] 括弧省略の問題? — NISHIKAWA <nyasu@...3web.ne.jp>
こんばんは。にゃす@3webです。
[#20701] call Process::waitpid with -1 — Tomoyuki Kosimizu <greentea@...2.so-net.ne.jp>
越水です。
まつもと ゆきひろです
[#20720] ruby 本の mtalkd マルチスレッド版について — Nobutaka Terauchi <europa@...>
はじめまして、寺内 信尊といいます。
[#20722] opttest.rb of optparse-0.6 — Toshiro Kuwabara <toshirok@...3.so-net.ne.jp>
Toshです。
なかだです。
Toshです。
なかだです。
Toshです。
なかだです。
Toshです。
なかだです。
[#20723] 正規表現について — Takayuki Tanaka <tanaka@...>
始めてメールさせていただきます。
[#20733] ANN: ActiveScriptRuby — "arton" <arton@...>
はじめまして。
[#20737] Ruby/Gtk の CList にパッチ — YASUI Kentarow <kenyasui@...>
安井です。
いがらしです。返答が遅くなりすみません。
まつもと ゆきひろです
やしです。
まつもと ゆきひろです
原です。
[#20766] cvsmailer — Daiji KANEMATSU <kanematu@...>
兼松と申します。
[#20771] CGI の改行 (Ruby + Apache on Windows) — ogino@...
たびたびすみません、荻野です。またひとつ分からない点が。
[#20774] 'scripting' / 'SUKURIPUTO' — TAKAHASHI Masayoshi <maki@...>
高橋征義です。
[#20821] method object — thitoshi@... (TAKAHASHI Hitoshi)
こんにちは。鈴木@仕事中です。
まつもと ゆきひろです
たかたです
新井です。
武井です。
まつもと ゆきひろです
ごとけんです
まつもと ゆきひろです
[#20848] media watch 2000.02.18 — Noritsugu Nakamura <nnakamur@...>
[#20865] ANN: ActiveScriptRuby Update — arton <arton@...>
artonです。
[#20887] 変数ウォッチ画面ありませんか? — Itou-T15@...
ひとつ相談ですが(伊藤です)
[#20918] Ruby 本入手法 — matz@... (Yukihiro Matsumoto)
まつもと ゆきひろです
[#20923] CUI library available in Ruby — Hideto ISHIBASHI <s34204@...>
石橋秀仁です。
石橋秀仁です。
石橋秀仁です。
[#20932] [Q] array.each{|i,j|... — junji999@...
高橋と申します.
[#20944] Hash#update について — Fuyuhiko Maruyama (丸山冬彦) <fuyuhik8@...>
丸山@東工大と申します。
なかだです。
From: 中村暁史 Nakamura Akifumi <BXQ04723@nifty.ne.jp>
丸山です。
まつもと ゆきひろです
丸山です。
まつもと ゆきひろです
丸山です。
まつもと ゆきひろです
[#20959] Ruby/GTK tの動かし方 — 中村暁史 Nakamura Akifumi <BXQ04723@...>
こんにちわ、阿部です。
いがらしです。
わたなべです.
[#20965] cgi.rb BUG? — rubikitch <rubikitch@...>
るびきちです。
なかだです。
nobu.nakada@nifty.ne.jp wrote:
なかだです。
nobu.nakada@nifty.ne.jp wrote:
まつもと ゆきひろです
matz@netlab.co.jp (Yukihiro Matsumoto) wrote:
青山です。
まつもと ゆきひろです
なかだです。
[#20992] GPIB driver その後 — Makoto Tagusari <mtag@...2.so-net.ne.jp>
皆さん今晩は、田鎖です。
石橋秀仁です。
皆さん今晩は、田鎖です。
In message "[ruby-list:21083] Re: Critical Block (Re: GPIB driver その後)"
皆さん今晩は、田鎖です。
まつもと ゆきひろです
[#21024] patch - ext/socket/socket.c — GOTOU YUUZOU <gotoyuzo@...>
ごとうゆうぞうです。
[#21028] CGI.rb のドキュメント探してます — Takumi Nakamura <chapuni@...>
はじめまして。福岡在住の中村と申します。
こんにちは。
江田です。
こんにちは。
[#21042] REQ: String#to_a — Tomoyuki Kosimizu <greentea@...2.so-net.ne.jp>
越水です。
[#21073] Regexp question — Kengo Nakajima <ringo@...>
京都の中嶋です。
まつもと ゆきひろです
[#21093] RD with URL — rubikitch <rubikitch@...>
るびきちです。
なかだです。
From: nobu.nakada@nifty.ne.jp
なかだです。
From: nobu.nakada@nifty.ne.jp
Toshです。
From: Toshiro Kuwabara <toshirok@yb3.so-net.ne.jp>
Toshです。
新井です。
Toshです。
新井です。
Toshです。
新井です。
Toshです。
[ruby-list:20587] Re: エスケープされていないものだけを置換
館林です。
Shin-ichiro Hara <sinara@blade.nagaokaut.ac.jp> さんが
2000/02/08 午後 12:31:29に書いた
「[ruby-list:20580] Re: エスケープされていないものだけを置換」 のお返事です:
> 原です。
>
> |ごとけんです
>
> |適用範囲によりますが、これだと先頭の _ は置換できないので、
> |次のようにした方が安全かも知れません。
> |
> |a.gsub(/(^|[^\\])_/, '\1 ')
>
> これが正解と思いますが、もしかして \ で \ をエスケープ可能に
> してたりしません? a = "\\\\_" の場合とか。だとすると実直に
>
> a.gsub(/\\?[\\_]/) { case $& when "_" then " " else $& end }
>
> とかしたほうがいいかもしれません。
ありがとうございます。\\\\は考えていませんでした。たしかに
ありえます。
使わせていただいたところ、"_abc\\\\_d\\_e"もちゃんと、
" abc\\\\ d\\_e"と置換されました。
すごいです。質問してから、24時間たらずでいくつもの新しい発見
がありました。
僕の質問に答えていただいた皆さん、ありがとうございます。
以下、FAQっぽい物をつけてみます。
教えていただいた内容を適宜編集させていただいています。
Q.エスケープされていない文字だけを置換したいのです。
具体的には、_を空白に置換したいのですが、\_は置換したくないのです。
どうしたら良いのでしょうか?
A.
a = "_ab_c\\_d"
a.gsub(/[^\\][_]/," ")
だと、
"_a c\\_d"
とbまで消えてしまいますし、行頭の_も置換されません。
gsubは、以降のブロックで、$1という後方参照が利用できます。
a.gsub(/([^\\])[_]/){$1+" "}
"_ab c\\_d"
これを実行すれば、bは消えなくなりました。
でも、これよりも、
gsub(/([^\\])_/, '\1 ')
こっちのほうが、すっきりしているでしょう。
但し、行頭の '_' はまだ置換されません。
a.gsub(/(^|[^\\])_/, '\1 ')
" ab c\\_d"
と、これで、無事、行頭の'_'も置換できました。
しかし、 \ で \ をエスケープ可能にしてある場合は、
a = "\\\\_" # この場合、\\は_にかからない。
a.gsub(/\\?[\\_]/) { case $& when "_" then " " else $& end }
p a
"\\\\ "
とかしたほうがいいかもしれません。
ちなみに、Perlだと、
$a = "_abc_d\\_e_";
$a =~ s/(^|[^\\])_/\1 /g;
$a =~ s/(?<!\\)_/\1 /g; #5.005以降
$a =~ s/(\G|[^\\])_/\1 /g; #5.005以降
なんて書けます。
■参考URL
Mastering Regular Expressions
http://public.yahoo.com/~jfriedl/regex/
詳説正規表現
http://www.oreilly.co.jp/BOOK/regex.htm
「詳説正規表現」読書メモ (by なひ)
http://www.jin.gr.jp/~nahi/src/mre.html
正規表現メーリングリスト
http://www.bug.org/ML/regexp/
正規表現メモ
http://www.kt.rim.or.jp/%7ekbk/regex/regex.html
========================================================
綾乃介@IBARAKI Univ.
E-mail: aya@big.or.jp
URL:http://www5.big.or.jp/~aya/
========================================================
茨城県日立市の総合情報サイト
メディアネットワーク マンボウ WebSite
http://manbow.cgi-space.to/
========================================================