Le canton n° 19 (Saint-Porchaire) comprend les communes suivantes : Balanzac, Beurlay, Crazannes, Ecurat, Les Essards, Geay, Nancras, Nieul-lès-Saintes, Plassay, Pont-l'Abbé-d'Arnoult, Port-d'Envaux, Romegoux, Saint-Georges-des-Coteaux, Saint-Porchaire, Saint-Sulpice-d'Arnoult, Sainte-Gemme, Sainte-Radegonde, Soulignonne, Trizay, La Vallée.
Le bureau centralisateur de ce canton est le bureau centralisateur de la commune de Saint-Porchaire.