[ruby-list:50228] 正規表現の挙動
From:
AOKI Yoshihiro <ml-reader@...>
Date:
2015-09-28 01:25:04 UTC
List:
ruby-list #50228
=E3=81=82=E3=81=8A=E3=81=8D=E3=81=A8=E7=94=B3=E3=81=97=E3=81=BE=E3=81=99=E3=
=80=82
ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]
=E3=81=A7=EF=BC=8C=E4=B8=8B=E3=81=AE=E3=82=B9=E3=82=AF=E3=83=AA=E3=83=97=E3=
=83=88=EF=BC=88utf-8=EF=BC=89=E3=82=92=E5=AE=9F=E8=A1=8C=E3=81=97=E3=81=BE=
=E3=81=97=E3=81=9F=E3=80=82
---
RNOTE_MATCH =3D /\\RNOTE
(?<arg1>\{(?<id> ([^{}]|\g<arg1>)*)\})
(?<arg2>\{(?<label>([^{}]|\g<arg2>)*)\})
(?<arg3>\{(?<icon> ([^{}]|\g<arg3>)*)\})
(?<arg4>\{(?<title>([^{}]|\g<arg4>)*)\})\n\t
(?<arg5>\{(?<body> ([^{}]|\g<arg5>)*)\})\n
/x
str =3D
"\\RNOTE{note17}{A}{}{ICON6}
=
{=E6=8C=87=E6=95=B0=E3=81=8C=E3=81=99=E3=81=B9=E3=81=A6=E5=81=B6=E6=95=B0=E3=
=81=AB=E3=81=AA=E3=82=8C=E3=81=B0=EF=BC=8C=E8=87=AA=E7=84=B6=E6=95=B0$2$=E4=
=B9=97=E3=81=AB=E3=81=AA=E3=82=8B=E3=80=82
=09
=EF=BC=88=E4=BE=8B=EF=BC=89$2^{4}\\cdot 5^{2}=3D{(2^{2}\\cdot =
5)}^{2}=3D20^{2}$
}
"
RNOTE_MATCH =3D~ str
p $~
---
=
=E5=87=BA=E5=8A=9B=E7=B5=90=E6=9E=9C=E3=82=92=E6=95=B4=E5=BD=A2=E3=81=99=E3=
=82=8B=E3=81=A8=EF=BC=8Carg5=E3=81=A8body=E3=81=AE=E5=86=85=E5=AE=B9=E3=81=
=8C=E7=95=B0=E3=81=AA=E3=82=8B=E3=81=AE=E3=81=A7=E3=81=99=E3=81=8C=EF=BC=8C=
=E6=AD=A3=E8=A6=8F=E8=A1=A8=E7=8F=BE=E3=81=AE=E6=9B=B8=E3=81=8D=E6=96=B9=E3=
=81=8C=E3=81=BE=E3=81=9A=E3=81=84=E3=81=AE=E3=81=A7=E3=81=97=E3=82=87=E3=81=
=86=E3=81=8B...=E3=80=82
#<MatchData
=
"\\RNOTE{note17}{A}{}{ICON6}\n\t{=E6=8C=87=E6=95=B0=E3=81=8C=E3=81=99=E3=81=
=B9=E3=81=A6=E5=81=B6=E6=95=B0=E3=81=AB=E3=81=AA=E3=82=8C=E3=81=B0=EF=BC=8C=
=E8=87=AA=E7=84=B6=E6=95=B0$2$=E4=B9=97=E3=81=AB=E3=81=AA=E3=82=8B=E3=80=82=
\n\t\n\t=EF=BC=88=E4=BE=8B=EF=BC=89$2^{4}\\cdot 5^{2}=3D{(2^{2}\\cdot =
5)}^{2}=3D20^{2}$\n\t}\n"
arg1:"{note17}"
id:"note17"
arg2:"{A}"
label:"A"
arg3:"{}"
icon:""
arg4:"{ICON6}"
title:"ICON6"
=
arg5:"{=E6=8C=87=E6=95=B0=E3=81=8C=E3=81=99=E3=81=B9=E3=81=A6=E5=81=B6=E6=95=
=B0=E3=81=AB=E3=81=AA=E3=82=8C=E3=81=B0=EF=BC=8C=E8=87=AA=E7=84=B6=E6=95=B0=
$2$=E4=B9=97=E3=81=AB=E3=81=AA=E3=82=8B=E3=80=82\n\t\n\t=EF=BC=88=E4=BE=8B=
=EF=BC=89$2^{4}\\cdot 5^{2}=3D{(2^{2}\\cdot 5)}^{2}=3D20^{2}$\n\t}"
body:"2}$\n\t"
>