0

次のような単純な整数桁識別式を考えてみましょう。

[0-9]+ printf("Integer");

今、私が入力として与えると、十分に公平123に返されます。Integer入力として与えるs123と、出力されsIntegerます。比類のないものsはデフォルトECHOで印刷されています。これは私にとってクールです。しかし、なぜIntegerも印刷されます。lex は単に ? を返すべきではありませんsか? 私の入力は文字列全体と見なされますか? つまりs123 is considered as a 1 full inputs一致しないものに遭遇するとすぐに、[0-9]+そうする必要がありますecho default unmatched value s123が、なぜsInteger?

4

1 に答える 1