что мешает вынести ЭТО в отдельный метод? тогда экранировать символы ';' будет не нужно, и останется разобраться только с '$', '^' и '@' в начале строки.
или в отдельный файл, что в общем правильно, подобные методы должны быть в отдельном, подключаемом .js файле, чтобы скешироваться броузером и не гоняться сотни раз посетителю.