import re
a = [
"5 pounds cauliflower,",
"cut into 1-inch florets (about 18 cups)",
"2 large leeks,",
"1 teaspoons salt",
"3 cups of milk",
"0 cups of milk",
"1 cup of milk"
]
r = r"(\d+) +(cups?)\b"
def repl(m):
x = int(m.group(1)) + 1
return str(x) + " " + ("cup", "cups")[x > 1]
for s in a:
print re.sub(r, repl, s)
aW1wb3J0IHJlCgphID0gWwoJIjUgcG91bmRzIGNhdWxpZmxvd2VyLCIsCgkiY3V0IGludG8gMS1pbmNoIGZsb3JldHMgKGFib3V0IDE4IGN1cHMpIiwKCSIyIGxhcmdlIGxlZWtzLCIsCgkiMSB0ZWFzcG9vbnMgc2FsdCIsCgkiMyBjdXBzIG9mIG1pbGsiLAoJIjAgY3VwcyBvZiBtaWxrIiwKCSIxIGN1cCBvZiBtaWxrIgpdCgkKciA9IHIiKFxkKykgKyhjdXBzPylcYiIKCmRlZiByZXBsKG0pOgoJeCA9IGludChtLmdyb3VwKDEpKSArIDEKCXJldHVybiBzdHIoeCkgKyAiICIgKyAoImN1cCIsICJjdXBzIilbeCA+IDFdCgpmb3IgcyBpbiBhOgoJcHJpbnQgcmUuc3ViKHIsIHJlcGwsIHMp