Jason Gurneau, 32, is accused of beating up, assaulting and robbing a 32-year-old woman in the 4400 block of North Sheridan Road.
Officers were called to an Uptown apartment building about 1:40 a.m. after someone called 911 and reported a sex assault taking place.
When officers got to the scene, a witness went up to them and pointed out a man who was trying to leave on a bicycle. The officers told the attacker to stop and ran after him when he kept going.
The woman was taken to a hospital and her condition stabilized.
Gurneau, of the 1000 block of West Lawrence Avenue, is expected to appear in Cook County Bond Court on Monday on charges of aggravated criminal sexual assault, robbery, aggravated battery, and two counts of resisting a police officer.