別のファイルを入力として受け取り、すべてのuseステートメントを出力するperlモジュールを作成しようとしています(strictとwarningsを除く)
my @result = grep /use\s+([^;(strict|warnings)]+)/, @file;
これは印刷します:
use Package1;
use Package2;
ただし、「Package1」の部分だけが必要です。したがって、マップを使用する場合:
my @result = map /use\s+([^;(strict|warnings)]+)/, @file;
これは間違った値を返します(最初の2文字または3文字を返します)
my @result = map /use\s+([^;]+)/, @file;
Package1、Package2、strict、warningsを返します。
最初のマップステートメントの正規表現を修正する方法を教えてもらえますか?
ありがとう