Some food cravings are caused by stress. So reducing your stress is a good way to reduce food cravings. I do things to reduce my stress like visualizing a relaxing beach and I exercise regularly. Using deep slow belly breathing can help. Meditation, yoga, tai chi and qigong are all good methods for reducing stress.
Boredom is another reason people get food cravings. If you get bored you are more likely to crave food and eat just for something to do. Try to keep yourself occupied. If snacking has become a habit try changing your routine.
Another possible reason for food cravings is that you are hungry. In this case you should probably just eat. Your body needs food. You could crave certain foods because it has something your body needs or you may not have eaten enough food. I eat when I am hungry so I snack almost every night and I am not overweight. However when I eat I do not overeat like some people do.