Consider
```
if( /^TY\s+-\s+JOUR/m.test(text) && /^JF\s+-\s+/m.test(text) && !/^TI\s+-\s+/m.test(text)) {
	var titlesArray = [];
	text = text.replace(/\r?\n^T[1-5]\s+-\s+(.+)/mg, function(m, title) {
			title = ZU.trimInternal(title);
			if(title) titlesArray.push(title);
			return '';
		});
	
	if(titlesArray.length) {
		//insert an aggregated TI tag
		text = text.replace(/^TY\s+-\s+(.+)$\n/m , "$&TI  - " + titlesArray.join(": ")  + "\n");
	}
}
```

Otherwise, use `": "` to join the array (no extra space before the colon)