。そのかなり簡単に書くことが容易な一方
一般的な正規表現を文字列に一致させることがありますが、逆にそれを見るには便利な場合があります
の設計後。場合によっては、どのようなビザのものがマッチするかを知る必要があります。
多くのメタ文字をリテラルとして混在させる場合、読みやすさとエラーを避けるために、
のような書式を設定することが非常に重要です。
ここでは、プロトタイプの方が簡単だったPerlサンプルがあります。
my @samps = (
'{[/abcd asdfasefasdc]}',
'{[# ]}',
'{[# /# \/]}',
'{[/# {[
| /# {[#\/} ]}',
,
);
for (@samps) {
if (m~{\[([#/][^ ]*) ([^]]*)\]}~)
{
print "Found: '$&'\ngrp1 = '$1'\ngrp2 = '$2'\n===========\n\n";
}
}
__END__
Expanded
\{\[
(
[#/][^ ]*
)
[ ]
(
[^\]]*
)
\]\}
出力
Found: '{[/abcd asdfasefasdc]}'
grp1 = '/abcd'
grp2 = 'asdfasefasdc'
===========
Found: '{[# ]}'
grp1 = '#'
grp2 = ''
===========
Found: '{[# /# \/]}'
grp1 = '#'
grp2 = '/# \/'
===========
Found: '{[/# {[
| /# {[#\/} ]}'
grp1 = '/# {[
|'
grp2 = '/# {[#\/} '
===========
出典
2012-03-07 17:20:45
sln
それは...多くの説明やドキュメント –
@alexためのおかげで動作します:どういたしまして! – ruakh