# \[Bug #541\] cgi.rb : obsolete regex "n" option

**URL:** <https://www.ruby-forum.com/t/bug-541-cgi-rb-obsolete-regex-n-option/147595>\
**Category:** Development\
**Created:** [September 3, 2008, 2:32pm UTC](https://www.ruby-forum.com/t/bug-541-cgi-rb-obsolete-regex-n-option/147595 "2008-09-03T14:32:53Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Takeyuki\_F](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/96bed5/32.png) [@Takeyuki\_F](https://www.ruby-forum.com/u/Takeyuki_F)\
**Post date:** [September 3, 2008, 2:32pm UTC](https://www.ruby-forum.com/t/bug-541-cgi-rb-obsolete-regex-n-option/147595/1 "2008-09-03T14:32:53Z")

</div>

Bug #541: cgi.rb : obsolete regex “n” option  
[http://redmine.ruby-lang.org/issues/show/541](http://redmine.ruby-lang.org/issues/show/541)

e$B5/I\<\<Te(B: Takeyuki F.  
e$B%9%F!\<%?%9e(B: Open, e$BM%@hEYe(B: Normal

# CGI::prettye$B$N@55,I=8=ItJ,$Ke(Bne$B$,;H$o$l$F$$$k$N$Ge(B warninge$B$,=P$^$9!#e(B Index: lib/cgi.rb

— lib/cgi.rb (e$B%j%S%8%g%se(B 19071)  
+++ lib/cgi.rb (e$B:n6H%3%T!\<e(B)  
@@ -1245,14 +1245,14 @@

# #

# 

def CGI::pretty(string, shift = " ")

- lines = string.gsub(/(?!\A)\<(?:.|\n)_?\>/n,  
“\n\0”).gsub(/\<(?:.|\n)_?\>(?!\n)/n, “\0\n”)

- lines = string.gsub(/(?!\A)\<(?:.|\n)_?\>/,  
“\n\0”).gsub(/\<(?:.|\n)_?\>(?!\n)/, “\0\n”)  
end\_pos = 0

- while end\_pos = lines.index(/^\</(\w+)/n, end\_pos)

- while end\_pos = lines.index(/^\</(\w+)/, end\_pos)  
element = $1.dup

- 

```
 start_pos = lines.rindex(/^\s*<#{element}/ni, end_pos)

```

- 

```
 lines[start_pos ... end_pos] = "__" + lines[start_pos ... 

```

end\_pos].gsub(/\n(?!\z)/n, “\n” + shift) + “\_\_”

- 

```
 start_pos = lines.rindex(/^\s*<#{element}/i, end_pos)

```

- 

```
 lines[start_pos ... end_pos] = "__" + lines[start_pos ... 

```

end\_pos].gsub(/\n(?!\z)/, “\n” + shift) + “\_\_”  
end

- lines.gsub(/^((?:#{Regexp::quote(shift)})\*)\_\_(?=\</?\w)/n, ‘\1’)

- lines.gsub(/^((?:#{Regexp::quote(shift)})\*)\_\_(?=\</?\w)/, ‘\1’)  
end

---

<div class="post-metadata">

**Author:** ![Takeyuki\_F](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/96bed5/32.png) [@Takeyuki\_F](https://www.ruby-forum.com/u/Takeyuki_F)\
**Post date:** [September 8, 2008, 3:37pm UTC](https://www.ruby-forum.com/t/bug-541-cgi-rb-obsolete-regex-n-option/147595/2 "2008-09-08T15:37:52Z")

</div>

e$B%A%1%C%He(B #541 e$B$,99?7$5$l$^$7$?!#e(B (by Takeyuki F.)

e$B%9%F!\<%?%9e(B Opene$B$+$ie(BClosede$B$KJQ99e(B  
e$B?JD=e(B % 0e$B$+$ie(B100e$B$KJQ99e(B

## Applied in changeset r19245.

[http://redmine.ruby-lang.org/issues/show/541](http://redmine.ruby-lang.org/issues/show/541)
