[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"
>

In This Thread

Prev Next