The 30-year-old man, who admitted charges of aggravated assault, had justified the September 2012 attack at the time as an attempt to uphold a controversial law banning women from wearing niqabs, face-covering veils, in public.
That defence was thrown out by public prosecutors, who accused him of acting as a vigilante and carrying out an assault motivated by his victim's religious faith.
The man, who was not publicly identified on the request of his lawyers, was also convicted of presenting a false identity to police.
The incident in the western city of Nantes was the latest in a series triggered by France's controversial ban on the wearing of full face veils in public, which came into force in April 2011.
Last September, Louis-Marie Suisse, a Muslim teenager in Marseille, was sent to prison for two months after being convicted of biting a policewoman in an altercation sparked by her arrest for wearing a full-face veil.
Under the law, women found guilty of wearing niqabs in public can be fined €150 or forced to undergo citizenship training.
Human rights group Amnesty International has condemned the legislation as breaching French citizens' right to freedom of expression.