That algorithm does not produce the results specified. On row 2 Diet Coke has Diet following the second space, but it is immediately followed by the third space so Coke won't be picked up. On row 13, pk Tonic is the result.
Leaving aside how, focus on what. Are AlumBottle, Sprite 4pk, Dt. Dr and 100% Vegetable actually the desired results, rather than Coca-Cola AlumBottle, Diet Coke AlumBottle, Coke Zero AlumBottle, Sprite AlumBottle, Dt. Dr Pepper and V8 100% Vegetable Juice?
If the universe of beverage names is known, a better approach would be the named entity routines in natural language processing packages.