Police arrested 32-year-old Frederick Dozier in January. Prosecutors claim DNA evidence link him to three attacks in the Mission District.
A surveillance camera recorded a man resembling Dozier near the scene of one of those crimes.
The attacks took place between June and December of last year. Dozier is being held without bail.