テキストファイルで識別子を見つける必要があります。
ただし、識別子がキーワードの場合は一致させたくありません。たとえば、キーワードとして「for」がある場合、次のようになります。
for (i=0 ; i< max ; i++)
私は得る必要があります:
Found: i
Found: i
Found: max
Found: i
先読みアサーションを調べましたが、機能させることができません。
$IDENTIFIER="(?!(for|while|do))[a-zA-Z_]+[a-zA-Z0-9_]*"
while ($entireFile =~ /($IDENTIFIER)/g)
{
print "Found ($1)" . "\n";
}
私は得る:
Found: or
Found: i
Found: i
Found: max
Found: i
これは私が望むものは静かではありません!なぜ「または」を取得するのかは理解できますが、どうすればそれをよりスマートにして「for」を完全に除外できますか?