Being "in heat" is different for every cat. Some have a heat and don't have another for months. Some have a heat once a month. Some are out of heat for a day or two and then back in. A "normal" heat cycle can last from 4 to 10 days. I will include a site with lots of info for you.
http://www.catsplay.com/thedailycat/...s/estrous.html
The very best thing you can do for your kitty is to get on the phone now and make an appointment with the vet. Don't wait for the heat cycle to be over with before calling. Your vet can advise you when the best time is. Please when you phone tell them you would like to book an appointment for a SPAYING, not a spraying.