Quantcast
Channel: 楽天 みんなで解決!Q&A 新着質問([技術者向] コンピューター/205)
Viewing all articles
Browse latest Browse all 29232

正規表現が意図しているより余計にマッチしてしまう

$
0
0
perl の正規表現について質問いたします。 末尾に記載したスクリプトを実行すると、入力中(__DATA__)の --- ccccc

ccccc

ccccc

ccccc

ccccc

ccccc

--- が、正規表現中の --- ( .+?\n

.+?

\n

.+?

\n

.+?

\n )+ --- の部分にマッチしてしまいます。 なぜマッチするのか、どなたか教えていただけませんでしょうか ---ここから末尾までがソース--- use strict; local $/ = "\n"; while (my $block = ) { if ($block =~ m{ \n .+?\n ( .+?\n

.+?

\n

.+?

\n

.+?

\n )+
\n }x) { print STDERR "NG\n"; } else { print STDERR "OK\n"; } } __DATA__ AAAAAA aaaaa

aaaaa

aaaaa

aaaaa

bbbbb

bbbbb

bbbbb

bbbbb

ccccc

ccccc

ccccc

ccccc

ccccc

ccccc


Viewing all articles
Browse latest Browse all 29232

Trending Articles