# Revert 1.9 \\w limitation to ASCII

**URL:** <https://www.ruby-forum.com/t/revert-1-9-w-limitation-to-ascii/186022>\
**Category:** Development\
**Created:** [March 30, 2010, 3:37pm UTC](https://www.ruby-forum.com/t/revert-1-9-w-limitation-to-ascii/186022 "2010-03-30T15:37:20Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Yukihiro\_M](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/c57346/32.png) [@Yukihiro\_M](https://www.ruby-forum.com/u/Yukihiro_M)\
**Post date:** [March 30, 2010, 3:37pm UTC](https://www.ruby-forum.com/t/revert-1-9-w-limitation-to-ascii/186022/1 "2010-03-30T15:37:20Z")

</div>

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

\de$B$,e(B[0-9]e$B$KJQ99$5$l$?$H$-$K!“F1;~$Ke(B \w  
e$B$be(BASCIIe$B$NHO0O$K8BDj$5e(B  
e$B$l$^$7$?$,!”$3$l$Oe(B 1.8 e$B$H$NBg$-$JHs8\_49@-$K$J$j$=$&$G$9!#e(BEUC  
e$B$de(BSJISe$B$K$_$$$F$O!"e(B1.8e$BF1MM!"Hse(BASCIIe$B$NJ8;z$Oe(B \w  
e$B$K4^$`$Y$-$G$Oe(B  
e$B$J$$$G$7$g$&$+!#$^$?!"e(BUnicodee$B$K$_$$$F$O!"%-%c%i%/%?%G!\<%?%Y!\<e(B  
e$B%9$,$"$k$N$G!"e(BUnicodee$BE\*$K%-%c%i%/%?$J$b$N$rBP\>]$K$9$k$N$,NI$$e(B  
e$B$H;W$$$^$9!#e(B

---

<div class="post-metadata">

**Author:** ![Yukihiro\_M](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/c57346/32.png) [@Yukihiro\_M](https://www.ruby-forum.com/u/Yukihiro_M)\
**Post date:** [March 30, 2010, 7:42pm UTC](https://www.ruby-forum.com/t/revert-1-9-w-limitation-to-ascii/186022/2 "2010-03-30T19:42:34Z")

</div>

(2010/03/30 22:37), Yukihiro M. wrote:

> e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B
> 
> \de$B$,e(B[0-9]e$B$KJQ99$5$l$?$H$-$K!“F1;~$Ke(B \w e$B$be(BASCIIe$B$NHO0O$K8BDj$5e(B  
> e$B$l$^$7$?$,!”$3$l$Oe(B 1.8 e$B$H$NBg$-$JHs8\_49@-$K$J$j$=$&$G$9!#e(BEUC  
> e$B$de(BSJISe$B$K$_$$$F$O!"e(B1.8e$BF1MM!"Hse(BASCIIe$B$NJ8;z$Oe(B \w e$B$K4^$`$Y$-$G$Oe(B  
> e$B$J$$$G$7$g$&$+!#$^$?!"e(BUnicodee$B$K$_$$$F$O!“%-%c%i%/%?%G!\<%?%Y!\<e(B  
> e$B%9$,$”$k$N$G!"e(BUnicodee$BE\*$K%-%c%i%/%?$J$b$N$rBP\>]$K$9$k$N$,NI$$e(B  
> e$B$H;W$$$^$9!#e(B

e$B!VBg$-$JHs8\_49@-$K$J$j$=$&$G$9!W$H$$$&$N$O2?$+6qBNE\*$J%U%#!\<%I%P%C%/$,e(B  
e$BGX7J$K$“$k$H;W$C$F$$$k$N$G$9$,!”$I$N$h$&$J%U%#!\<%I%P%C%/$G$7$g$&$+!#e(B

e$B$^$:!"e(BEUC e$B$de(B SJIS e$B$KBP$7$F$N$b$N$@$H2\>Dj$7$^$9!#e(B

e$B$3$N\>l9g!“!Ve(BEUC e$B$de(B  
SJISe$B!W$H$O6qBNE\*$K$O2?$+$H$$$&$3$H$,LdBj$K$J$k$G$7$g$&!#e(B  
Shift\_JIS, Windows-31J, EUC-JP, CP51932, eucJP-ms e$B$”$?$j$Oe(B  
e$BEvA34^$^$l$k$H$7$F!"3(J8;z7Oe(B SJIS  
e$B$J$s$+$b4^$^$l$k$N$G$7$g$&$+$M!#e(B  
e$B$b$C$H?J$a$k$H!"e(BCP949 e$B$H$+e(B EUC-CN e$B$H$+$O!“e(B1.8  
e$B$G$Oe(B SJIS/EUC e$B$G07$C$F$$$?e(B  
e$B2DG=@-$,9M$($i$l$^$9$,!”$3$l$O$I$&$9$k$N$G$7$g$&!#e(B

e$B$^$?!“e(BEUC e$B$He(B SJIS e$B7O$N$\_$H$$$&$N$O0l4S@-$K7g$1$^$9!#e(B  
e$BMxJX@-$N$?$a$J$i0l4S@-$r7g$/$3$H$b$$$H$o$J$$$N$,e(B Ruby  
e$B$N;Q@\*$G$O$”$j$^$9$,!“e(B  
e$BF|K\8l7O$@$1$H$$$&$N$O@5D\>$$$+$,$J$b$N$+$H;W$$$^$9!#e(B  
e$B$H$$$&$o$1$G!”$3$NJ}8~$G9T$/$J$i$P!"e(Bnon ASCII non Unicode  
e$B$N\>l9g$O!"e(B  
e$B$KJQ$($?J}$,$$$$$h$&$K46$8$^$9!#e(B

e$B\<!$K!“e(BUnicodee$B!”$H$$$&$+e(B UTF8  
e$B$KBP$7$F$N$b$N$@$H2\>Dj$7$^$9!#$3$3$G!"e(B

> Unicodee$B$K$_$$$F$O!“%-%c%i%/%?%G!\<%?%Y!\<e(B  
> e$B%9$,$”$k$N$G!"e(BUnicodee$BE_$K%-%c%i%/%?$J$b$N$rBP\>]$K$9$k$N$,NI$$e(B  
> e$B$H;W$$$^$9!#e(B  
> e$B$r:NMQ$9$k$H!"$9$0$K$O5$$E$-$E$i$$$,\<B:]$KLdBj$,=P$k$H$$$&!"e(B  
> e$BLq2p$J8\_49@-LdBj$rAH$\_F~$l$k$3$H$K$J$j$^$9!#e(B

e$B$H$$$&$N$b!"8e$KB\>$N8@8l$G$Ne(B \w  
e$B$NCf?H$r=P$7$F$$$^$9$,!"IaDL$O$3$Ne(B  
e$B!Ve(BUnicodee$BE\*$K%-%c%i%/%?$J$b$N!W$O5-9f$NN`$r4^$_$^$;$s!#e(B  
e$B$A$J$_$K!"e(BBug #3047  
e$B$O0lB-Aa$/$=$l$r4|BT$7$F$,$C$+$j$7$F$$$kNc$G$9!#e(B  
[http://redmine.ruby-lang.org/issues/show/3047](http://redmine.ruby-lang.org/issues/show/3047)

1.9 e$B$Ge(B \w  
e$B$r!Ve(BUnicodee$BE\*$K%-%c%i%/%?$J$b$N!W$K$9$k$H$3$N5U!"e(B  
e$B6qBNE\*$K$O:#$^$G%^%C%A$7$F$$$?0lIt$NJ8;z$,%^%C%A$7$J$/$J$j$^$9!#e(B  
e$B$3$l$Oe(B non ASCII e$B$,A4$F%^%C%A$7$J$/$J$ke(B  
(e$B$1$I$9$0$K5$$E$/e(B)  
e$B8=:\_$N\<BAu$h$j$?$A$,0-$$$N$G$O$J$$$G$7$g$&$+!#e(B  
e$B$D$^$j!"8\_49@-$,M}M3$J$i$P$3$N0F$OL5$$$H;W$&$N$G$9!#e(B

e$B$^$H$a$k$H!“8\_49@-$,M}M3$J$i$P%(%s%3!\<%G%#%s%0$K8B$i$:!“e(B  
(e$B$H$O8@$C$F$be(B non dummy encoding e$B$K$J$j$^$9$,e(B)  
[a-zA-Z\_0-9] + non ASCII (= /[a-zA-Z\_0-9\P{ASCII}]/)  
e$B$,@52r$G$7$g$&!#e(B  
Ruby e$B$NJ8K!E\*$K$b$3$l$O\<1JL;R$K;H$($kL\>A0$H0lCW$9$k$N$G0UL#$,e(B  
e$B$J$-$K$7$b$”$i$:$G$”$k$h$&$K$O;W$$$^$9!#e(B

e$B$J$\*!"8\_49@-$H$OJL$K=q$-$d$9$5$NLL$Ge(B \w  
e$B$GC18l9=@.J8;z$C$]$$$N$Ke(B  
e$B%^%C%A$7$FM\_$7$$$H$$$&\<gD%$J$i$PJL$N5DO@$G!"0J2\<$N$h$&$J46$8$K$J$j$^$9$+!#e(B

1. \w e$B$@$1FCJL07$$$7$?$$e(B
2. \w e$B$@$1e(B Unicode e$B$O5$;}$A0-$$e(B  
2a. [:word:] e$B;H$C$F$he(B  
2b. \d e$B$He(B \s e$B$be(B Unicode e$B;V8~$KLa$=$&$\<e(B

= Ruby 1.8  
ASCII: [a-zA-Z\_0-9]  
SJIS/EUC/UTF8: [a-zA-Z\_0-9] + non ASCII

= Java  
[a-zA-Z\_0-9]  
[http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html](http://java.sun.com/j2se/1.5.0/docs/api/java/util/regex/Pattern.html)

= .NET  
[\p{Ll}\p{Lu}\p{Lt}\p{Lo}\p{Nd}\p{Pc}]

> **[Character Classes](https://learn.microsoft.com/en-us/previous-versions/dotnet/netframework-1.1/20bw873z(v=vs.71)?redirectedfrom=MSDN)**

= Perl  
e$B$?$V$se(B UTS #18 e$B$K=`$8$ke(B

> **[perlunicode - Unicode support in Perl - metacpan.org](https://metacpan.org/release/JESSE/perl-5.12.0-RC1/view/pod/perlunicode.pod)**
>
> Unicode support in Perl

[http://www.unicode.org/reports/tr18/](http://www.unicode.org/reports/tr18/)

= Python  
e$B$?$V$se(B Perl e$B$HF1$8e(B

> **[re — Regular expression operations](https://docs.python.org/3/library/re.html)**
>
> Source code: Lib/re/ This module provides regular expression matching operations similar to those found in Perl. Both patterns and strings to be searched can be Unicode strings ( str) as well as 8-...

---

<div class="post-metadata">

**Author:** ![Yukihiro\_M](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/c57346/32.png) [@Yukihiro\_M](https://www.ruby-forum.com/u/Yukihiro_M)\
**Post date:** [March 31, 2010, 12:09am UTC](https://www.ruby-forum.com/t/revert-1-9-w-limitation-to-ascii/186022/3 "2010-03-31T00:09:58Z")

</div>

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:40863] Re: revert 1.9 \w limitation to ASCII”  
on Wed, 31 Mar 2010 02:39:18 +0900, “NARUSE, Yui”  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) writes:

|e$B!VBg$-$JHs8\_49@-$K$J$j$=$&$G$9!W$H$$$&$N$O2?$+6qBNE\*$J%U%#!\<%I%P%C%/$,e(B  
|e$BGX7J$K$“$k$H;W$C$F$$$k$N$G$9$,!”$I$N$h$&$J%U%#!\<%I%P%C%/$G$7$g$&$+!#e(B

e$BNc$K$h$C$F%=!\<%9$r$O$C$-$j3P$($F$$$J$$$N$G62=L$G$9$,!“e(B1.9e$B$Ge(B  
\we$B$,%^%C%A$7$J$/$J$C$?$H$$$&6l\>p$r8+$?$3$H$,$”$j$^$9!#e(B  
Twittere$B$@$C$?$+$J!#e(B

|e$B$^$:!"e(BEUC e$B$de(B SJIS e$B$KBP$7$F$N$b$N$@$H2\>Dj$7$^$9!#e(B

|e$B$^$?!“e(BEUC e$B$He(B SJIS e$B7O$N$\_$H$$$&$N$O0l4S@-$K7g$1$^$9!#e(B  
|e$BMxJX@-$N$?$a$J$i0l4S@-$r7g$/$3$H$b$$$H$o$J$$$N$,e(B Ruby e$B$N;Q@\*$G$O$”$j$^$9$,!“e(B  
|e$BF|K\8l7O$@$1$H$$$&$N$O@5D\>$$$+$,$J$b$N$+$H;W$$$^$9!#e(B  
|e$B$H$$$&$o$1$G!”$3$NJ}8~$G9T$/$J$i$P!"e(Bnon ASCII non Unicode e$B$N\>l9g$O!"e(B  
|e$B$KJQ$($?J}$,$$$$$h$&$K46$8$^$9!#e(B

e$BK?M$O$=$N$D$b$j$G$7$?!#:#FI$\_JV$9$H$=$&$OFI$a$^$;$s$M!#e(B

|e$B\<!$K!“e(BUnicodee$B!”$H$$$&$+e(B UTF8 e$B$KBP$7$F$N$b$N$@$H2\>Dj$7$^$9!#$3$3$G!“e(B  
|\> Unicodee$B$K$_$$$F$O!“%-%c%i%/%?%G!\<%?%Y!\<e(B  
|\> e$B%9$,$”$k$N$G!"e(BUnicodee$BE_$K%-%c%i%/%?$J$b$N$rBP\>]$K$9$k$N$,NI$$e(B  
|\> e$B$H;W$$$^$9!#e(B  
|e$B$r:NMQ$9$k$H!”$9$0$K$O5$$E$-$E$i$$$,\<B:]$KLdBj$,=P$k$H$$$&!"e(B  
|e$BLq2p$J8\_49@-LdBj$rAH$_F~$l$k$3$H$K$J$j$^$9!#e(B  
|  
|e$B$H$$$&$N$b!"8e$KB\>$N8@8l$G$Ne(B \w e$B$NCf?H$r=P$7$F$$$^$9$,!"IaDL$O$3$Ne(B  
|e$B!Ve(BUnicodee$BE\*$K%-%c%i%/%?$J$b$N!W$O5-9f$NN`$r4^$_$^$;$s!#e(B  
|e$B$A$J$_$K!"e(BBug #3047 e$B$O0lB-Aa$/$=$l$r4|BT$7$F$,$C$+$j$7$F$$$kNc$G$9!#e(B  
|[http://redmine.ruby-lang.org/issues/show/3047](http://redmine.ruby-lang.org/issues/show/3047)  
|  
|1.9 e$B$Ge(B \w e$B$r!Ve(BUnicodee$BE\*$K%-%c%i%/%?$J$b$N!W$K$9$k$H$3$N5U!"e(B  
|e$B6qBNE\*$K$O:#$^$G%^%C%A$7$F$$$?0lIt$NJ8;z$,%^%C%A$7$J$/$J$j$^$9!#e(B  
|e$B$3$l$Oe(B non ASCII e$B$,A4$F%^%C%A$7$J$/$J$ke(B (e$B$1$I$9$0$K5$$E$/e(B)  
|e$B8=:_$N\<BAu$h$j$?$A$,0-$$$N$G$O$J$$$G$7$g$&$+!#e(B  
|e$B$D$^$j!"8\_49@-$,M}M3$J$i$P$3$N0F$OL5$$$H;W$&$N$G$9!#e(B  
|  
|e$B$^$H$a$k$H!“8\_49@-$,M}M3$J$i$P%(%s%3!\<%G%#%s%0$K8B$i$:!“e(B  
|(e$B$H$O8@$C$F$be(B non dummy encoding e$B$K$J$j$^$9$,e(B)  
|[a-zA-Z\_0-9] + non ASCII (= /[a-zA-Z\_0-9\P{ASCII}]/) e$B$,@52r$G$7$g$&!#e(B  
|Ruby e$B$NJ8K!E\*$K$b$3$l$O\<1JL;R$K;H$($kL\>A0$H0lCW$9$k$N$G0UL#$,e(B  
|e$B$J$-$K$7$b$”$i$:$G$”$k$h$&$K$O;W$$$^$9!#e(B

e$B3N$+$K$3$3$O5DO@$NM\>CO$N$"$k$H$3$m$G$9!#e(B

e$B$^$:!"5sF0$N8uJd$re(B

(1) a-zA-Z\_0-9  
(2) a-zA-Z\_0-9 + non ASCII  
(3) Unicodee$BE\*e(BCaharacter

e$B$H$7$^$9!#\<!$K!"MxMQ\<T$NN)\>l$re(B

(a) 1.8e$B%9%/%j%W%H0?“\<Te(B (EUC/SJIS)  
(b) 1.8e$B%9%/%j%W%H0?”\<Te(B (UTF-8)  
(c) EUC/SJIS(e$BMW$9$k$Ke(BUnicodee$B0J30e(B)e$BMxMQ\<Te(B  
(d) Unicoder

e$B$HJ,$1$^$9!#$3$l$i$=$l$\>$l$NN)\>l$K$H$C$F!VK\>$^$7$$!W5sF0$H$Oe(B

(a) e$B"\*e(B (2) : e$B8\_49@-$,0];}$5$l$k$+$ie(B  
(b) e$B"\*e(B (2) : e$B8\_49@-$,0];}$5$l$k$+$ie(B  
(c) e$B"\*e(B (2) : e$B8\_49@-$,0];}$5$l$k$+$ie(B  
(d) e$B"_e(B (3) : e$B$_$=$i$/K\Mhe(B\we$B$K4|BT$9$k$H$3$m$@$+$ie(B

e$B$K$J$k$G$7$g$&!#e(B(d)e$B0J30$K$H$C$F$O!"@.@%$5$s$N$\*$C$7$c$k$h$&e(B  
e$B$K!"e(BUnicodee$B$b4^$a$Fe(B a-zA-Z\_0-9 + non ASCII  
e$B$K$9$Y$-$H$$$&7ke(B  
e$BO@$K$J$j$=$&$G$9$M!#e(B

e$B$7$+$7!":#8e!"e(BRubye$B$NMxMQ\<T$N$&$Ae(BUnicodere$B$N3d9g$OA}2C$7!“8\_49e(B  
e$B@-$r6/$/4|BT$9$k?M$O8:\>/$9$k$G$”$m$&$3$H$r9M$($k$H!"e(B

non Unicode e$B"\*e(B (2)  
Unicode e$B"\*e(B (3)

e$B$H$$$&$N$O!"$5$[$I0-$$A\*Br$G$O$J$$$H;W$$$^$9!#0lJ}!"8=\>u$Ne(B  
a-zA-Z\_0-9 e$B$K8BDj$9$k$3$H$O!"A40w$,!V$7$+$?$J$$!W$H46$8$k$b$Ne(B  
e$B$N!"B?$/$,$&$l$7$/$J$$$H$$$&!VJ?Ey$KITK~!W$H$$$&$b$N$K$J$C$Fe(B  
e$B$$$k$N$G$O$J$$$G$7$g$&$+!#e(B

e$B@.@%$5$s$,;XE&$5$l$ke(BUnicodee$B$K$\*$1$k8\_49@-LdBj$H$O!"e(B

- Unicodee$BMxMQ\<T!"$+$De(B
- \w e$B$,A4$F$Ne(Bnon ASCIIe$B%-%c%i%/%?$K%^%C%A$9$k$3$H$r4|BT$9$ke(B

e$B?M$KH/@8$9$k$b$N$G$9$,!"$3$l$N?\<9o$5$O$A$g$C$H$o$+$j$^$;$s!#e(B  
e$B$?$$$7$?LdBj$G$O$J$5$=$&$J5$$b$9$k$s$@$1$I!#e(B

|e$B$J$\*!"8\_49@-$H$OJL$K=q$-$d$9$5$NLL$Ge(B \w e$B$GC18l9=@.J8;z$C$]$$$N$Ke(B  
|e$B%^%C%A$7$FM\_$7$$$H$$$&\<gD%$J$i$PJL$N5DO@$G!"0J2\<$N$h$&$J46$8$K$J$j$^$9$+!#e(B  
|1. \w e$B$@$1FCJL07$$$7$?$$e(B  
|2. \w e$B$@$1e(B Unicode e$B$O5$;}$A0-$$e(B  
|2a. [:word:] e$B;H$C$F$he(B  
|2b. \d e$B$He(B \s e$B$be(B Unicode e$B;V8~$KLa$=$&$\<e(B

e$B$H$3$m$G!“e(B[:word:]e$B$C$F8=\>u$J$K$K%^%C%A$7$^$9$+$M!#$J$s$H$J$/!“e(B  
a-zA-Z\_0-9e$B$K$7$+%^%C%A$7$J$$$h$&$J5$$,$9$k$s$G$9$,!#e(B[:word:]  
e$B$,\>e$G=R$Y$?5sF0$r$9$k$N$G$”$l$P!”;d$NDq93$O$@$$$V\>/$J$/$J$ke(B  
e$B$s$G$9$,!#e(B

```
                            e$B$^$D$b$He(B e$B$f$-$R$me(B /:|)

```

---

<div class="post-metadata">

**Author:** ![Yukihiro\_M](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/y/c57346/32.png) [@Yukihiro\_M](https://www.ruby-forum.com/u/Yukihiro_M)\
**Post date:** [March 31, 2010, 3:12am UTC](https://www.ruby-forum.com/t/revert-1-9-w-limitation-to-ascii/186022/4 "2010-03-31T03:12:35Z")

</div>

æˆç€¬ã§ã™ã€‚

2010å¹´3æœˆ31æ—¥7:09 Yukihiro M. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> Twitterã ã£ãŸã‹ãªã€‚  
> ãƒžãƒƒãƒã—ãªããªã‚‹ã“ã¨è‡ªä½“ã¯äºˆæƒ³ã•ã‚ŒãŸã‚‚ã®ã§ã™ãŒã€  
> ã©ã®ãã‚‰ã„æ·±åˆ»ã‹ã¨ã„ã†ã®ã¯é›£ã—ã„ã¨ã“ã‚ã§ã™ã­ã€‚  
> ã‚ã¨ã€ãã‚‚ãã‚‚æœŸå¾…ã•ã‚Œã¦ã„ãŸãƒžãƒƒãƒå¯¾è±¡ã¯ä½•ã ã£ãŸã®ã‹ã€ã¨ã‹ã€‚

> |[http://redmine.ruby-lang.org/issues/show/3047](http://redmine.ruby-lang.org/issues/show/3047)  
> |Ruby ã®æ–‡æ³•çš„ã«ã‚‚ã“ã‚Œã¯è­˜åˆ¥å­ã«ä½¿ãˆã‚‹åå‰ã¨ä¸€è‡´ã™ã‚‹ã®ã§æ„å‘³ãŒ  
> ã¨ã—ã¾ã™ã€‚æ¬¡ã«ã€åˆ©ç”¨è€…ã®ç«‹å ´ã‚’  
> Â (c) â†’ (2) : äº’æ›æ€§ãŒç¶­æŒã•ã‚Œã‚‹ã‹ã‚‰  
> Â Unicode Â Â â†’ (3)
> 
> ã¨ã„ã†ã®ã¯ã€ã•ã»ã©æ‚ªã„é¸æŠžã§ã¯ãªã„ã¨æ€ã„ã¾ã™ã€‚ä¸€æ–¹ã€ç¾çŠ¶ã®  
> a-zA-Z\_0-9 ã«é™å®šã™ã‚‹ã“ã¨ã¯ã€å…¨å“¡ãŒã€Œã—ã‹ãŸãªã„ã€ã¨æ„Ÿã˜ã‚‹ã‚‚ã®  
> ã®ã€å¤šããŒã†ã‚Œã—ããªã„ã¨ã„ã†ã€Œå¹³ç­‰ã«ä¸æº€ã€ã¨ã„ã†ã‚‚ã®ã«ãªã£ã¦  
> ã„ã‚‹ã®ã§ã¯ãªã„ã§ã—ã‚‡ã†ã‹ã€‚

Â¥d ã‚„ Â¥sã€ã•ã‚‰ã«ã¯ String#upcase ãªã©ã®å„ç¨®çµ„ã¿è¾¼ã¿ã®æŒ™å‹•ãŒ  
ASCII ãƒ™ãƒ¼ã‚¹ã®æŒ™å‹•ãªã®ã§ã€ãã‚Œã¨ã®ä¸€è²«æ€§ã¯ã†ã‚Œã—ã„ã‚“ã˜ã‚ƒãªã„ã§ã—ã‚‡ã†ã‹ã€‚

ã¾ãŸã€è­˜åˆ¥å­ã¨ã—ã¦ã‚ˆãã‚ã‚‹å½¢å¼ãªã®ã§ã€ã¾ã•ã«ã“ã‚ŒãŒæ¬²ã—ã„ã¨ã„ã†ä¾‹ã‚‚  
ãã‚Œãªã‚Šã«ã‚ã‚‹ã§ã—ã‚‡ã†ã€‚å®Ÿéš› Ruby ã®æ¨™æº–æ·»ä»˜ãƒ©ã‚¤ãƒ–ãƒ©ãƒªã«ã¯  
ãã‚Œãªã‚Šã« Â¥w ã‚’åˆ©ç”¨ã—ã¦ã„ã‚‹ä¾‹ãŒå­˜åœ¨ã—ã¾ã™ã€‚

ã¨ã„ã†ã‹ã€ã‚ãŸã—ãŒ Â¥w ã‚’æ›¸ãã¨ãã«æœŸå¾…ã™ã‚‹ã®ã¯åŸºæœ¬çš„ã« ASCII ã®æ–¹ã§ã€  
ãŸã¾ã« $KCODE=‘u’ ã§ã‚‚ãã†ã‚„ã£ã¦ãƒã‚°ã‚’ä½œã£ãŸæ–¹ãŒå¤šã‹ã£ãŸã‚ˆã†ãªã€‚

> æˆç€¬ã•ã‚“ãŒæŒ‡æ‘˜ã•ã‚Œã‚‹Unicodeã«ãŠã‘ã‚‹äº’æ›æ€§å•é¡Œã¨ã¯ã€
> 
> Â \* Unicodeåˆ©ç”¨è€…ã€ã‹ã¤  
> Â \* \w ãŒå…¨ã¦ã®non ASCIIã‚­ãƒ£ãƒ©ã‚¯ã‚¿ã«ãƒžãƒƒãƒã™ã‚‹ã“ã¨ã‚’æœŸå¾…ã™ã‚‹
> 
> äººã«ç™ºç”Ÿã™ã‚‹ã‚‚ã®ã§ã™ãŒã€ã“ã‚Œã®æ·±åˆ»ã•ã¯ã¡ã‚‡ã£ã¨ã‚ã‹ã‚Šã¾ã›ã‚“ã€‚  
> ãŸã„ã—ãŸå•é¡Œã§ã¯ãªã•ãã†ãªæ°—ã‚‚ã™ã‚‹ã‚“ã ã‘ã©ã€‚

æ™®é€šã«å®Ÿè£…ã™ã‚‹ã¨ã€ãƒžãƒƒãƒã—ãªã„ä¾‹ã¨ã—ã¦ã€[ï¿¥ã€œã€ã€‚]ãªã©ãªã©ã€‚  
æ·±åˆ»ã•ã¯ãƒ¦ãƒ¼ã‚¹ã‚±ãƒ¼ã‚¹ã«ã‚ˆã‚‹ã¨æ€ã†ã®ã§ã™ãŒã€Â¥w ã®ãƒ¦ãƒ¼ã‚¹ã‚±ãƒ¼ã‚¹ã£ã¦  
ä½•ãªã®ã§ã—ã‚‡ã†ã‹ã€‚è€ƒãˆãŸé™ã‚Šã§ã¯ Â¥S ã®æ–¹ãŒé©åˆ‡ã ã£ãŸã‚Šã€æ•°å­—ã‚’é™¤ã„ãŸæ–¹ãŒ  
è‰¯ã•ãã†ã ã£ãŸã‚Šã€è¨˜å·ã‚‚å«ã‚ã‚‹ã¹ãã ã£ãŸã‚Šã§ã€ã„ã¾ã„ã¡ä½¿ã„é“ãŒã€‚

ã¨ã“ã‚ã§ã€å€‹äººçš„ã«ãƒžãƒ«ãƒãƒã‚¤ãƒˆã® Â¥w ã‚’ä½¿ã†ã¨ãã£ã¦ [Â¥wÂ¥W] ã§ã€  
ãƒžãƒ«ãƒãƒã‚¤ãƒˆã® . ã‚’ä½œã‚‹ã¨ãã ã‘ã ã£ãŸã‚“ã§ã™ãŒã€  
æ™®é€šã®æ–¹ã£ã¦ Â¥w ã‚’ä½•ã«ä½¿ã£ã¦ã„ã‚‹ã®ã§ã—ã‚‡ã†ã‹ã€‚

> ã‚“ã§ã™ãŒã€‚  
> Perl ã® Â¥w ã¨åŒã˜ã§ã™ã€‚ã¤ã¾ã‚Šã€ãŸã¶ã‚“ã¾ã¤ã‚‚ã¨ã•ã‚“ãŒã‚¤ãƒ¡ãƒ¼ã‚¸ã—ã¦ã„ã‚‹ã‚„ã¤ã§ã™ã€‚  
> ãƒžãƒƒãƒã™ã‚‹: 0aA\_ï¼ï½ï¼¡ã‚æ¼¢Î±Ð‹  
> ãƒžãƒƒãƒã—ãªã„: -'@ã€œã€ã€‚ãƒ»ï¿¥  
> [http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/doc/re.rdoc?revision=HEAD&view=markup](http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/doc/re.rdoc?revision=HEAD&view=markup)

ä»¥ä¸‹ã¯ç‰¹ã«æ³¨ã®ãªã„ã‚‚ã®ã¯å…¨ã¦ Unicode å¿—å‘ã§ã™

- /[[:alnum:]]/ - Alphabetic and numeric character
- /[[:alpha:]]/ - Alphabetic character
- /[[:blank:]]/ - Space or tab
- /[[:cntrl:]]/ - Control character
- /[[:digit:]]/ - Digit
- /[[:graph:]]/ - Non-blank character (excludes spaces, control  
characters, and similar)
- /[[:lower:]]/ - Lowercase alphabetical character
- /[[:print:]]/ - Like [:graph:], but includes the space  
character
- /[[:punct:]]/ - Punctuation character
- /[[:space:]]/ - Whitespace character ([:blank:],  
newline,  
carriage return, etc.)
- /[[:upper:]]/ - Uppercase alphabetical
- /[[:xdigit:]]/ - Digit allowed in a hexadecimal number (i.e.,  
0-9a-fA-F)
- /[[:word:]]/ - A character in one of the following Unicode  
general categories _Letter_, _Mark_, _Number_,  
_Connector\_Punctuation\<i/i\>_
 _- /[[:ascii:]]/ - A character in the ASCII character set_
 
 

ã§ã€ã“ã‚Œã‚’çœºã‚ã¦ã„ã‚‹ã¨ã€äººã€…ãŒçœŸã«æ±‚ã‚ã¦ã„ã‚‹ã®ã¯å®Ÿã¯ [:graph:] ãªã‚“ã˜ã‚ƒãªã„ã‹  
ã¨æ€ã£ãŸã‚Šã™ã‚‹ã‚ã‘ã§ã™ã€‚
