This New York Times article has good information about which foods are still safe to eat past their expiration date. One takeaway is that dry food that doesn't have much fat in it is probably safe to eat for years. For example white rice, which has been refined so that the fat is removed, will last a lot longer than brown rice, which will go rancid after several months. Dried beans and lentils will also last for years, but will "become tougher and take longer to cook as time goes on."
Canned fruits and vegetables also have very long shelf lives:
So long as there is no outward sign of spoilage (such as bulging or rust), or visible spoilage when you open it (such as cloudiness, moldiness or rotten smells), your canned fruits, vegetables and meats will remain as delicious and palatable as the day you bought them for years (or in the case of, say, Vienna sausages at least as good as they were to begin with). The little button on the top of jarred goods, which will bulge if there has been significant bacterial action inside the jar, is still the best way to tell if the contents are going to be all right to eat. Depending on storage, that could be a year or a decade. Similarly, cans of soda will keep their fizz for years, glass bottles for up to a year and plastic bottles for a few months. (Most plastics are gas-permeable.)
U.S. Air Force photo by Airman 1st Class China M. Shock