If you don't need to know the polarity, you could bridge rectify and then use a voltage divider to bring it down to 0-5V levels. (If you do need to know polarity then use two half-wave rectifiers and two separate inputs.) You would need to account for the voltage drop across the rectifier in your code.
Make sure the signal can't ever go negative or exceed 5V or the Arduino may be destroyed.
As far as I remember the ADC tops out at about 10 KHz using the standard analogRead(). You'll need to consider your maximum power frequency and number of samples wanted per cycle to see whether sampling frequency was going to be an issue. If necessary the ADC can work faster if you are willing to sacrifice resolution, but this means bypassing the Arduino runtime and hitting the hardware directly..