[#14715] HTTP Client with Ruby — TAKAHASHI Masayoshi <maki@...>

高橋征義です。

32 messages 1999/06/01
[#14834] Re: HTTP Client with Ruby — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/06/05

なひです.

[#14836] Re: HTTP Client with Ruby — TAKAHASHI Masayoshi <maki@...> 1999/06/05

高橋征義です。

[#14858] Re: HTTP Client with Ruby — gotoken@... (GOTO Kentaro) 1999/06/07

ごとけんです

[#14896] Re: HTTP Client with Ruby — TAKAHASHI Masayoshi <maki@...> 1999/06/07

高橋です。みなさまどうもありがとうございます。

[#14907] Re: HTTP Client with Ruby — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/06/08

なひです.

[#14766] ruby 1.3.4 on BSD/OS 3.1 — Yasunari Momoi <momo@...>

BSD/OS 3.1 (with kame) で ruby-1.3.4 を作ろうとしているんで

18 messages 1999/06/03
[#14770] Re: ruby 1.3.4 on BSD/OS 3.1 — matz@... (Yukihiro Matsumoto) 1999/06/03

まつもと ゆきひろです

[#15012] ext ML の過去ログはいずこ? — 中村暁史 <anakamur@...>

22 messages 1999/06/16
[#15013] Re: ext ML の過去ログはいずこ? — Shin-ichiro Hara <sinara@...> 1999/06/16

原です。

[#15014] Re: ext ML の過去ログはいずこ? — 中村暁史 <anakamur@...> 1999/06/16

[#15015] Re: ext ML の過去ログはいずこ? — Kazunori Akaishi <akaishi@...> 1999/06/16

akaishi です。

[#15016] Re: ext ML の過去ログはいずこ? — 中村暁史 <anakamur@...> 1999/06/16

[#15045] mail library — Minero Aoki <aamine@...>

あおきです。

96 messages 1999/06/20
[#15075] Re: mail library — Minero Aoki <aamine@...> 1999/06/22

あおきです。

[#15122] Re: mail library — Minero Aoki <aamine@...> 1999/06/28

あおきです。

[#15123] Re: mail library — matz@... (Yukihiro Matsumoto) 1999/06/28

まつもと ゆきひろです

[#15125] Re: mail library — WATANABE Hirofumi <watanabe@...> 1999/06/28

わたなべです.

[#15126] Re: mail library — matz@... (Yukihiro Matsumoto) 1999/06/28

まつもと ゆきひろです

[#15146] Re: mail library — Minero Aoki <aamine@...> 1999/06/29

あおきです。

[#15148] Re: mail library — matz@... (Yukihiro Matsumoto) 1999/06/29

まつもと ゆきひろです

[#15161] Re: mail library — Minero Aoki <aamine@...> 1999/06/30

あおきです。

[#15165] Re: mail library — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/06/30

なひです.

[#15167] Re: mail library — Minero Aoki <aamine@...> 1999/06/30

あおきです。

[#15219] Re: mail library — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/07/03

なひです.

[#15228] Re: mail library — hisanori@... 1999/07/05

松尾です。

[#15279] Re: mail library — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/07/07

なひです.

[#15172] Re:mail library — Takeo Iwama <iwamat@...> 1999/07/01

はじめまして、岩間です。

[#15218] JUS workshop ( was Re:mail library ) — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/07/03

なひです.mod_rubyと格闘中です.

[#15220] Mod_ruby server does not respond when POST request. — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/07/03

なひです.mod_rubyネタはruby-listでよいでしょうか?

[#15226] Re: Mod_ruby server does not respond when POST request. — Shugo Maeda <shugo@...> 1999/07/05

前田です。

[#15240] mod_ruby/0.1.2 with Apache/1.3.6 on Solaris/2.5.1 ( was Re: Mod_ruby server does not respond when POST request. ) — "NAKAMURA, Hiroshi" <nakahiro@...> 1999/07/05

なひです.

[#15242] Re: mod_ruby/0.1.2 with Apache/1.3.6 on Solaris/2.5.1 ( was Re: Mod_ruby server does not respond when POST request. ) — Shugo Maeda <shugo@...> 1999/07/05

前田です。

[#15308] Re: mod_ruby/0.1.2 with Apache/1.3.6 on Solaris/2.5.1 — Katsuyuki Komatsu <komatsu@...> 1999/07/08

小松です。

[#15310] Re: mod_ruby/0.1.2 with Apache/1.3.6 on Solaris/2.5.1 — Shugo Maeda <shugo@...> 1999/07/08

前田です。

[#15313] Re: mod_ruby/0.1.2 with Apache/1.3.6 on Solaris/2.5.1 — Katsuyuki Komatsu <komatsu@...> 1999/07/08

小松です。

[#15057] 複雑?な構造体の定義方法 — Koichi Shigematsu <shige@...>

しげまつ と申します。  とっても久しぶりの投稿です。

18 messages 1999/06/21
[#15058] Re: 複雑?な構造体の定義方法 — matz@... (Yukihiro Matsumoto) 1999/06/21

まつもと ゆきひろです

[#15059] Re: 複雑?な構造体の定義方法 — Koichi Shigematsu <shige@...> 1999/06/21

しげまつ です。

[#15061] Re: 複雑?な構造体の定義方法 — matz@... (Yukihiro Matsumoto) 1999/06/21

まつもと ゆきひろです

[#15065] pattern (Re: 複雑?な構造体の定義方法) — gotoken@... (GOTO Kentaro) 1999/06/21

ごとけんです

[#15076] Re: pattern (Re: 複雑?な構造体の定義方法) — matz@... (Yukihiro Matsumoto) 1999/06/22

まつもと ゆきひろです

[#15077] Re: pattern (Re: 複雑?な構造体の定義方法) — gotoken@... (GOTO Kentaro) 1999/06/22

ごとけんです

[ruby-list:14752] Re: gsub("'", "\\'")

From: Koji Arai <JCA02266@...>
Date: 1999-06-02 17:01:34 UTC
List: ruby-list #14752
新井です。

>>> From: Toshihiko SHIMOKAWA / 下川俊彦 <toshi@csce.kyushu-u.ac.jp>
>>> Date: 02 Jun 1999 19:31:46 +0900
>>> Subject: [ruby-list:14746] gsub("'", "\\'")

> 簡単なことのような気もするのですが、分からないので質問させてください。

いやぁ、これはよくハマりますからね。

> 文字列中の ' 一文字を \' の二文字に置換しようとして、はまっています。
> gsub("'", "\\'") で良いかと思ったのですが、うまくいきませんでした。
> 1.3.4-990531 と 1.2.5 で試しましたがどちらも同じ結果でした。

[ruby-list:14696] Ruby traps & tips

の以下が参考になる(あぁ便利です。遠藤さん)んですが。
そこはわかっているようですね。

| Q3-2)'\1'と'\\1'はどう違いますか
|   同じです。シングルクォートの中では、\'と\\だけが解釈され、それ
| 以外は解釈されません。

| Q5-7)バックスラッシュをエスケープするにはどうしますか
|   Regexp.quote('\\')で、エスケープされます。gsubを使う場合には、
| gsub(/\\/, '\\\\')では、置換文字列が構文解析で一度\\に変換され、
| 実際に置き換えるときにもう一度\と解釈されるので、gsub(/\\/,'\\\\\\')
| とする必要があります。\&がマッチ文字列をあらわすことを使えば、
| gsub(/\\/,'\&\&')と書けます。gsub(/\\/){'\\\\'}なら、エスケープが
| 1回しか解釈されませんので、求める結果が得られます。

> 
> % cat gsub.rb
> s="'Test"
> p s.gsub("'", "\'")
> p s.gsub("'", "\\'")
> p s.gsub("'", "\\\'")
> p s.gsub("'", "\\\\'")
> p s.gsub("'", "\\\\\'")
> p s.gsub("'", "\\\\\\'")
> p s.gsub("'", "\\")
> 
> % ruby gsub.rb
> "'Test"
> "TestTest"
> "TestTest"
> "\\'Test"
> "\\'Test"
> "\\TestTest"
> "\\Test"
> 
> いまいち、動作が納得できません。

> gsub("'", "\'") では、\' という文字つまり ' への置換が起っているようです。
> 納得。

はい。

> gsub("'", "\\'") では gsub でのメタキャラクタとしての \' つまりマッチし
> た部分より後(ここでは "Test")への置換が起きているようです。しかし、\ が
> 一個行方不明な気がします。あれ?

''では \' と \\ が、""では\nやその他もろもろがまず
解釈されます。gsub()が\1 や \& などを探すのは*その
後*なので\が一個減ったように見えます。

gsub("'", "\\'")

gsub   '    \'		<- ruby の字句解析結果

gsub   '    Test	<- gsub の解釈

> gsub("'", "\\\'") も メタキャラクタ \' との置換が起きているようですが、
> \ が二個行方不明になっているような気がします。あれあれ?

こちらも同じ 上と違って(rubyレベルでの) \' -> ' の解釈が加わってます。

gsub("'", "\\\'")

gsub   '    \'		<- ruby の字句解析解結果(上と同じ)

gsub   '    Test	<- gsub の解釈

> gsub("'", "\\\\'") は \\ つまり \ と言う文字 2つへの置換が起きているよう
> です。納得…ちょっと待て、なんか変。

gsub("'", "\\\\'")

gsub   '    \\'		<- ruby の構文解釈後

gsub   '    \'		<- gsub の解釈

下川さんが求める結果はこれです。勘違いがあるのは、
親切な p が \ を\\にして表示しているところですね。
(おしいですね。あと一歩だった)

> と言うことで、正しい gsub の使い方を教えてくださいませませ。

以下が余計な事を考えなくて済むので良いでしょうね。

p s.gsub("'") { "\\'" }

In This Thread