Also consider 'struggle between', 'struggle versus', and 'struggle through' which I go into further detail below.
They're synonyms, although 'struggle against' has more of a connotation of a bigger battle against the idea that one struggles with. One can 'struggle with' an addiction but a 'struggle against' addiction suggests that the struggle is much tougher to overcome.
Another main difference is that 'struggle with' can be used to describe sharing the same struggle with someone else, as in 'I struggled with her', although this sentence can also mean that you're struggling against her. This ambiguity means that the writer must write appropriate context before the sentence lest he confuse the reader. A way to avoid this is by rewriting 'I struggled with her' to 'we both struggled with'.
Google Ngrams results:
'Struggle against' was more popular in the 20th century although 'struggle with' has overcome it in the 21st.
More Ngrams:
struggle with/against *
struggle with/against a *
The results show that 'against' is used for formidable opponents or societal/political ideals, e.g. 'struggle against a common [enemy], struggle against a nation, struggle against a system'. 'With' is used when the object of struggle is more local or personal.
struggle with/against the *
There are similar results when the article is instead 'the'. An interesting difference is that 'with' is used when the struggle concerns man vs. nature.
Even more Ngrams:
struggled with/against *
struggled with/against the *
struggled with/against a *
struggles with/against *
struggles with/against the *
struggles with/against a *
struggling with/against *
struggling with/against the *
struggling with/against a *
struggle with her own *, struggle with his own *, struggle with their own *
struggle against her own *, struggle against his own *, struggle against their own *
struggle with/against its *
struggle with/against this *
struggle with/against an *
There also exist some useful alternatives, for example 'versus'. 'Struggle versus' could be a nice middle-of-the-road alternative to 'with' or 'against'; it's not so antagonistic as 'against' and not so vague as 'with'.
e.g. struggle versus addiction, struggle with addiction, struggle against addiction
The word 'for' can also be used when the 'struggle' is in aim of some objective/ideal:
e.g. struggle for freedom, struggle for victory, struggle for justice, struggle for wealth.
Another option is between, which is more useful when the struggle of the opposing forces is more equally matched and the opposing forces fall inside the same classification, e.g. the 'struggle between good and evil, struggle between me and you, struggle between many countries'. The advantage of 'between' is that it can be used to describe a struggle encompassing more than two opposing forces, whereas 'with' and 'against' can only be used for two opposing forces.
e.g. struggle between the self, society, and nature
struggle between *
Yet another option is 'struggle through'; this one is connotative of working hard to overcome the struggle:
~to get through something in the best way possible. I am going to struggle through this dull book to the very end. The course was dull, but I struggled through.
struggle on:
Cambridge dictionary definition:
~to continue dealing with a difficult situation or to continue doing something difficult:
When Bobbie leaves, we'll have to struggle on by ourselves until we find a replacement
struggle on with (something):
McGraw-Hill Dictionary of American Idioms and Phrasal Verbs
~to make do as well as one can with something. I will have to struggle on with the car that I have. We will struggle on with what we have, hoping for better someday.
struggle on the part of (someone):
used to denote who the struggle belongs to
struggle along (with someone/something):
McGraw-Hill Dictionary of American Idioms and Phrasal Verbs
~to make do as well as one can with someone or something. I really need someone who can work faster, but I'll struggle along with Walter. We struggled along the best we could.
struggle along under (something):
McGraw-Hill Dictionary of American Idioms and Phrasal Verbs
~to make do as well as one can under a particular burden. I will have to struggle along under these poor conditions for quite a while. I am sorry you have to struggle along under such burdens.
Variants other than 'struggle':
~Fight with/against/between
~Fight back
~Battle with/against/between
~Strife with/between/against
~Grapple with
~Contend with
~Combat with/against
~Cope with
~Hold out against
Ngrams of the above variations: Part 1
Ngrams of the above variations: Part 2
struggle against: McGraw-Hill Dictionary of American Idioms and Phrasal Verbs
~to strive or battle against someone or something. There is no point in struggling against me. I will win out. He struggled against the disease for a year before he died.
struggle with: McGraw-Hill Dictionary of American Idioms and Phrasal Verbs
~to fight with someone to obtain something. Max struggled with Lefty for the gun, and it went off. Timmy struggled with Bobby for the bicycle, and finally David took it away from both of them.
~to fight or battle with someone or something. Fred struggled with Tom for a while and finally gave in. Tom struggled with the disease for a while and finally succumbed to it.