わたなべです.

:原です。
:
:p "abc".sub(/b/, 'x\&y') # => "a&yc"
:
:となりますが、本来 "ax&yc" ですよね。

これでいいのかな?

-- 
わたなべひろふみ

--- ../ruby-1.0-970217/re.c	Fri Feb  7 15:12:32 1997
+++ re.c	Tue Feb 18 18:59:54 1997
@@ -592,8 +592,11 @@
 	}
 
 	if (no < 0) {   /* Ordinary character. */
-	    if (c == '\\' && (*s == '\\' || *s == '&'))
+	    if (c == '\\' && (*s == '\\' || *s == '&')) {
+		if (NIL_P(val)) val = str_new(p, s-p);
+		else str_cat(val, p, s-p);
 		p = s++;
+	    }
 	} else {
 	    if (BEG(no) == -1) continue;
 	    str_cat(val, src->ptr+BEG(no), END(no)-BEG(no));