複数行のコメントを解析したいのですが、常に貪欲です。
正規表現:
MUL_COMMENT ("#*"(.|\n)*?"*#")
flex ファイルのフラグメント:
<DIRECTIVE>{MUL_COMMENT} {BEGIN INITIAL;
printf("mul comment for directive end:%s\n",yytext);yylval.string = strdup(yytext); return COMMENT;}
テキストファイル:
#*erewrewrewr
wer*#
#set( $a=7)
#*#ere
wrewrewrwe*#
解析結果:
Node:astn=Comment,image:"#*erewrewrewr\nwer*#\n\n#set( $a=7)\n\n#*#ere\nwrewrewrwe*#"
mul comment for directive end:#*erewrewrewr
wer*#
#set( $a=7)
#*#ere
wrewrewrwe*#
画像は彼の文字列のマッチングです。明らかに彼は貪欲でした!それを修正する方法、私を助けてください!